Javascript 为什么格式化程序不';不能在片段xml中工作?
我的另一个库中有一个格式化程序函数,我的目标是使用这个函数。这里是my Formatter.js:Javascript 为什么格式化程序不';不能在片段xml中工作?,javascript,fragment,formatter,sapui5,Javascript,Fragment,Formatter,Sapui5,我的另一个库中有一个格式化程序函数,我的目标是使用这个函数。这里是my Formatter.js: sap.ui.define([], function () { "use strict"; var Formatter = { showAsDate : function(str){...} }; return Formatter; }); 在我的片段中,我使用它如下: <Text text="{ path: 'jsonModel>
sap.ui.define([], function () {
"use strict";
var Formatter = {
showAsDate : function(str){...}
};
return Formatter;
});
在我的片段中,我使用它如下:
<Text text="{
path: 'jsonModel>/date',
formatter : '.Formatter.showAsDate'
}" />
我正在使用。我根据。您可以在中看到类似的用法。但这些示例展示了如何从视图而不是从片段访问格式化程序。我可以从myView.view.xml访问Formatter.js,但我无法从片段中访问它。如果有任何帮助,我将不胜感激。您可以分享如何调用片段吗? 通常在调用片段时,您会有一个额外的参数来指定JS对象上下文,如下所示
var oFragment = sap.ui.xmlfragment("YourFragment.xml",this);
上面的代码是在控制器中调用的,因此“this”将引用控制器实例,格式化函数应该可以工作。您能否分享如何调用片段? 通常在调用片段时,您会有一个额外的参数来指定JS对象上下文,如下所示
var oFragment = sap.ui.xmlfragment("YourFragment.xml",this);
上面的代码是在控制器中调用的,因此“this”将引用控制器实例,格式函数应该可以工作。调用它的方式类似于“oFormFragment=sap.ui.xmlfragment(this.getView().getId(),“view.”+sffragmentname);'但现在我在末尾添加了“this”参数,它正在工作。非常感谢。它的调用方式类似于'oFormFragment=sap.ui.xmlfragment(this.getView().getId(),'view.+sffragmentname);'但现在我在末尾添加了“this”参数,它正在工作。非常感谢你。