我使用ember-cli-mirage
来存根API,在配置中我有这个
this.get('/users',function(db,request){
if(request.queryParams.short_url){
var short_url = request.queryParams.short_url;
return db.users.where({short_url: short_url});
} else {
console.log('no query params');
return db.users;
}
});
在我的索引路径中,我有模型钩子设置
model(params) {
return this.store.queryRecord('user',{short_url: params.short_url});
}
但是,我没有从海市蜃楼返回我的用户模型,当我将其转换为变量并将其记录到控制台时,我得到了一个类对象。
答案 0 :(得分:0)
store.queryRecord
返回的是一个承诺。在渲染模板之前,Ember会在内部等待解析。如果您想记录该数据或将该数据保存到localstorage中,您需要首先解决该承诺
// ...
return this.store.queryRecord('user',{short_url: params.short_url}).then(function(result){
// console.log(result);
// localStorage.setItem('result', JSON.stringify(result));
return result;
});
// ...