我正在创建我的第一个SAP UI5应用程序,我需要在我将其设置为表视图中的模型之前为Odata服务返回的数据设置其他属性
但是我无法访问数据,因为getProperty返回一个空对象。下面是我的控制器的onInit()方法的代码。我从manifest.json获取模型,因为它看起来很干净。
var rList = this.getOwnerComponent().getModel("Entities");
var localPromise = this.getPromise(rList, "/");
localPromise.done(function() {
console.log(rList.getProperty("/"));
// here i would like to do the manipulations and then set the view
}.bind(this));
},
我假设getPromise方法必须处理异步执行部分:
getPromise: function(oModel, pathToTestForData) {
var deferred = $.Deferred();
if (oModel.getProperty(pathToTestForData))
deferred.resolve(); //Data already loaded
else
oModel.attachRequestCompleted(deferred.resolve); //Waiting for the event
return deferred.promise();
}
我想做的是以下内容:
1)使Odata双向绑定。
2)在每个返回的Odata记录上设置另一个属性:anotherProperty : false
然而,由于承诺内容中的rList.getProperty("/")
为空,我处于障碍中,也是如何访问数据(如果它在那里)