此变量可在 onContext 函数中访问,但我想将获取的 ajax json 结果分配给网格的存储对象。grid 是像 gride:{store:"some-Json"} 这样的对象
define([
"dojo/_base/declare",
"dojo/when",
"aps/_View",
"aps/xhr"
], function(
declare,
when,
_View,
xhr
) {
var page, grid, self, contextId,myResult,samp;
return declare(_View, {
init: function() {
self = this;
return ["aps/Grid", {
id: "srv_grid",
selectionMode: "multiple",
columns: [{
field: "id",
name: "Id"
}]
},
];
}, // End of Init
onContext: function(context) {
this.grid = this.byId("srv_grid"); //working
xhr.get("/aps/2/resources/" + aps.context.vars.device.aps.id + "/getresource").
then(function(data){
myResult=data;
this.grid.params.store=data; //got error here this.grid is undefined
this.grid.store=data; //got error here this.grid is undefined
}
),
this.grid.refresh();
},
}); // End of Declare
}); // End of Define
init
是首先调用的第一个方法,然后onContext
是方法调用.. 这个词在该函数中可用,并且this
变量具有 this.grid 属性,this.grid 属性在 中不可访问。 this的属性在xhr.get()
中更改xhr.get()
。我想访问这个内部xhr.get()
函数的所有属性。因为我想将我的 ajax json 结果分配给this.grid.store
和this.grid.params.store
属性