为什么格式化器不能在片段xml中工作
why formatter doesn't work in fragment xml?
在我的另一个库中有一个formatter函数,我的目的是使用这个函数。这里是我的Formatter.js:
sap.ui.define([], function () {
"use strict";
var Formatter = {
showAsDate : function(str){...}
};
return Formatter;
});
在我的片段中,我像下面这样使用它:
<Text text="{
path: 'jsonModel>/date',
formatter : '.Formatter.showAsDate'
}" />
在控制器中调用Formatter.js,如下所示:
sap.ui.define(["libpath/Formatter"], function (Formatter){
"use strict";
return Controller.extend("controller.myController", {
Formatter : Formatter,
//I add my fragment to myView with this method
//and I am calling this method in onInit.
_showFormFragment : function (sFragmentName) {
var oPage = this.getView().byId("page");
oPage.removeAllContent();
oPage.insertContent(this._getFormFragment(sFragmentName));
}
});
});
我正在使用openui5beta库。我根据演练样本编码了我的视图和控制器。您可以在InvoiceList.controller.js、InvoiceList.view.xml、HelloDialog.fragment.xml中看到类似的用法。但是这些示例展示了如何从视图而不是从片段访问格式化器。我能够从myView.view.xml到达Formatter.js,但我无法从我的片段到达它。
你能分享你的片段是如何被调用的吗?通常当fragment被调用时,你有一个额外的参数来指定JS对象上下文,像这样
var oFragment = sap.ui.xmlfragment("YourFragment.xml",this);
上面的代码是在控制器中调用的,所以"this"将指向控制器实例,格式函数应该可以工作。
相关文章:
- xml.getelement by tag name无法正常工作
- JavaScript XML解析在IE中工作,但在Firefox / Chrome中不起作用
- 遍历 xml 在 FF 中工作正常,但在使用 jquery 的 IE 中则不行
- 工作灯适配器中的 XML 处理
- XML读取代码在我的服务器上工作,但在我的客户端服务器上不工作
- XML到JSON在firefox中工作,但在chrome中产生TypeError
- 基于XML属性更改样式的indesigncs6脚本不工作
- Ajax XML请求不能正常工作
- jQuery从1.5.X到1.7.x使XML不再工作
- Jquery获取XML属性值,用转义不工作
- 我无法将这个XML文件读取到我的页面.函数可以工作,但是不能读取XML
- 为什么格式化器不能在片段xml中工作
- jQuery XML解析不能与嵌套标签一起工作
- 谷歌地图API V3标记不能从XML工作
- XML阅读器不工作
- 用jQuery导入XML:在服务器上工作,而不是在本地
- 代理连接到XML跨服务器.使用Ajax可以在某些浏览器上工作,而不是其他浏览器?代码包括在内
- XML解析器似乎不工作在我的javascript
- 如何使用jQuery从Web工作线程中解析XML
- 使用phoneback——从xml服务器取回不正确工作