即使存在数据,dojo dstore 中的 Get 方法也不会返回对象

Get method in dojo dstore is not returning object even though data is present

我正在尝试通过提供 id 来获取特定数据,以获取这样的方法,

var person = [
              {id:1,name:"abc"},
              {id:2,name:"xyz"}
             ];
var detailsStore = new Memory([{data: person,idProperty:"id"}]);    

并获得这样的价值,

var person = detailsStore.get(1);
person.then(function(data){
var data1 = data.name;
},function(err){
console.log(err);
});

但是"detailsStore.get(1)"返回的promise对象没有任何对象,因此回调函数中的参数数据是未定义的。 为什么即使存在数据也不返回对象?

这段代码对我来说完全没问题:

require([
    'dstore/Memory'
], function (Memory) {
    var store = new Memory({ data: [
        { id: 1, name: 'abc' },
        { id: 2, name: 'xyz' }
    ] });
    store.get(1).then(function (data) {
        console.log(data.name);
    });
});

fiddle

我怀疑您是在尝试访问 data1 未定义的其他地方吗?或许见 How do I return the response from an asynchronous call?