sapui5 – 从XML绑定表达式调用控制器函数

使用OpenUI5 / SAPUI5,根据 XML Binding Expressions的文档,我们可以从视图中执行函数.
new sap.m.CheckBox({
    selected: "{= checkSelectedItems(${odata>CustomerId}) }"
})

在我的控制器后面的视图:

checkSelectedItems: function(sCustomerId) {
    return true;
}

在我看来,我得到一般错误,好像它找不到我的函数

Uncaught TypeError: Cannot read property 'apply' of undefined

我试过用几种方法调用函数

{= .checkSelectedItems() }
{= my.namespace.checkSelectedItems() }

我甚至尝试在索引页面的脚本标记添加一个函数,看看它是否只能访问全局函数,但我也无法触发它.建议?我误解了文档吗?

在这里查看JS Bin:http://jsbin.com/sosotacihi/edit?html,output.我已经注释掉了有问题的CheckBox,但如果你把它放进去,你会看到错误.

您需要使用formatter从XML视图调用控制器的方法.
new sap.m.CheckBox({
     selected: "{parts:['odata>CustomerId'],formatter:'.checkSelectedItems'}"
 });

这可以应用于任何事件触发属性.提到这一点的一般方法是:

{parts:['<parameter1>','<parameter2>',...],formatter:'.<methodInController>'}

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念