我正在关注SAP UI 5 上的这个 CRUD示例,并且我正在尝试重现/理解 SAPUI5 的工作原理。
我试图弄清楚这段代码是如何工作的:
this.createButton = new sap.m.Button({
icon : "sap-icon://add",
visible : {
path : "local>/inEdit",
formatter : function(inEdit) { return !inEdit; }
},
press : [ oCon.createButtonPress, oCon ]
});
在视图createButton
内部创建Home.view.js
,并从此模型对象中获取路径值,在onInit
函数内部实例化Home.controller.js
:
onInit : function(){
var model = new sap.ui.model.json.JSONModel({
mode : sap.m.ListMode.None,
inEdit : false,
inDelete : false,
inBatch : false
});
this.getView().setModel(model, "local");
}
我不明白的是这段代码是如何工作的,同时创建createButton
按钮:
...
visible : {
path : "local>/inEdit",
formatter : function(inEdit) { return !inEdit; }
},
...
visible
将布尔值作为值,从formatter
函数返回,这没关系。我真正不明白的是,一个具有两个属性(path和formatter )的对象将如何使用path的值作为它自己的 inputp 参数自动“运行” formatter的函数。我错过了什么吗?
我希望我足够清楚,在此先感谢