2

所以,我正在创建一个自定义模式窗口:

var modal = Alloy.createController('modal');
modal.getView().open();

在 Modal 控制器内部是一个被调用的函数changeTitle,在视图中是一个带有 id 的标签modalTitle。我想弄清楚的是如何从启动模态窗口的控制器中调用任何一个。

我认为以下会调用控制器中的函数,但没有骰子:

modal.changeTitle('foo');

同样,我认为以下内容将针对新创建视图中的标签,但同样,没有骰子。

var modalWin = modal.getView();
modalWin.$.modalTitle = 'foo';
4

1 回答 1

5

您必须changeTitle使用exports. 因此,在您创建的模态控制器中,它看起来像这样:

exports.changeTitle = function() {
    // Your function definition...
};

对于第二部分,再一次,这不是全局可用的,我想您可以在模态控制器中执行此操作:

exports.$ = $;

然后你写的东西会起作用,但是将内部成员暴露给外界似乎很危险。我只会将您需要的功能嵌套在上面的公开函数中。

于 2013-09-10T13:04:11.753 回答