Метод get в dojo dstore не возвращает объект, даже если данные присутствуют
Я пытаюсь получить конкретные данные, предоставляя идентификатор, чтобы получить метод, подобный этому,
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)", не имеет никакого объекта, поэтому данные аргумента в функции обратного вызова не определены. Почему это не возвращающий объект, даже если данные присутствуют?
1 ответ
Решение
Этот код прекрасно работает для меня:
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);
});
});
Вижу скрипку.
Я подозреваю, что если что-то, вы пытаетесь получить доступ data1
где то еще что то не определено? Возможно, посмотрите, как я могу вернуть ответ от асинхронного вызова?