通行证;这";SAPUI5上javascript函数的上下文
ODataModel对象有以下功能:通行证;这";SAPUI5上javascript函数的上下文,javascript,sapui5,Javascript,Sapui5,ODataModel对象有以下功能: serviceModel.read(“/Users(1)”{ 成功:函数(userModel){ this.getView().setModel(userModel,“userAuthenticated”); } }); 调用this.getView()函数时出现错误此不可识别且具有空值。我选择使用这个不太优雅的解决方案: var viewCurrent=this.getView(); serviceModel.read(“/Users(1)”{ 成功:函
serviceModel.read(“/Users(1)”{
成功:函数(userModel){
this.getView().setModel(userModel,“userAuthenticated”);
}
});
调用this.getView()
函数时出现错误<代码>此不可识别且具有空值。我选择使用这个不太优雅的解决方案:
var viewCurrent=this.getView();
serviceModel.read(“/Users(1)”{
成功:函数(userModel){
setModel(userModel,“userAuthenticated”);
}
});
无论如何,我想知道如何正确地将“this”上下文作为参数传递。如果您看到上下文
与函数上下文不相关
要正确设置上下文,您有两个选项。第一种方法是使用将此
绑定到当前作用域此
值的
serviceModel.read(
"/Users(1)", {
success: (userModel) => {
this.getView().setModel(userModel, "userAuthenticated");
},
...
如果您在不支持箭头函数的环境中运行,则始终可以使用它来指定函数内部的this
值
serviceModel.read(
"/Users(1)", {
success: function(userModel) {
this.getView().setModel(userModel, "userAuthenticated");
}.bind(this),
...