我有一个sapui5应用程序,它在我的页面中有几个控件。如表、日历等。
我在onInit事件中为我的页面创建了一个singe模型,如下所示
var viewModel = new JSONModel();
//Prepare Initial Model
viewModel.setData({
LineDetails: [],
Calendar: {},
PageMode: "add",
DateStart: new Date(),
DateEnd: new Date(),
IsHistoryAvailable: false
});
this.getView().setModel(viewModel);我需要做的是,我必须在这个页面的对话框中包含一个智能表。一旦我点击页面中的一个按钮,对话框就会打开。如何将数据绑定到对话框中的智能表?
我只具有将模型绑定到智能表的经验,智能表可以在清单或页面中声明默认模型。
但是在这里,我已经在onInit事件中向页面添加了一个模型。那么我如何绑定数据呢?
是否有方法将智能表绑定到上面声明的模型中包含的属性。
Propert名称:SmartTableModel
例:
viewModel.setData({
SmartTableModel:[]
LineDetails: [],
Calendar: {},
PageMode: "add",
DateStart: new Date(),
DateEnd: new Date(),
IsHistoryAvailable: false
});发布于 2018-11-26 13:10:37
默认情况下,要绑定的数据必须来自ODataModel,这是默认模型!换句话说:您不能简单地绑定来自某个JSONModel的数据,也不能将数据绑定到来自命名模型的SmartTable (即使它是和ODataModel)。
我不敢告诉你,从今天起,你想要的就不管用了。您可以在实际的应用程序代码中使用MockerServer +注释作为解决办法(不是用于测试),但我认为我会避免这种情况。还有其他一些技巧,您可以在这里开始阅读:SAP UI5 :named json model with smart table
https://stackoverflow.com/questions/52300282
复制相似问题