我创建了一个带有JSON格式的对象数组的JSonStore。 我已经验证它格式正确。
然后我尝试在其上使用dojo forEach循环,但JSonStore似乎没有任何数据。我可以在我的网页URL中指定目标,并显示正确的数据。但是使用console.log(myJsonStore)显示了一个对象,但我没有看到Firebug中的数据。我也没有看到提供数据的服务有任何GET。这就像在浏览器中指定URL中的目标路径来激发GET,但是当我尝试在foreach所在的postCreate中触发它时,不会这样做。
答案 0 :(得分:1)
你可以这样做:
var storeObj = new JsonRest({
target: "/some/resource"
});
storeObj.query({}).forEach(function(obj){console.log(obj);});
应该做的伎俩
答案 1 :(得分:1)
里卡多的回答,我相信有点不正确,因为JsonRest.query函数返回一个dojo.Deferred。
你通过商店读取api异步进行REST调用 - 一旦它返回值,它将承诺运行什么设置为回调。
尝试使用循环迭代器
storeObj.query( {} ).then(function ( results ) {
dojo.forEach( results, function( obj ) {
console.log( obj );
});
}