2

私はember-cli-mirageAPIをスタブ化するために使用しています.configにはこれがあります

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});
}

しかし、それは蜃気楼からユーザー モデルを返してくれません。それを変数にキャストしてコンソールにログを記録すると、代わりにクラス オブジェクトが取得されます。

4

1 に答える 1

0

store.queryRecord返すものは約束です。Ember は、テンプレートをレンダリングする前に、それが解決されるのを内部的に待ちます。それをログに記録したり、そのデータをローカルストレージに保存したりしたい場合は、最初にその約束を解決する必要があります

// ...
return this.store.queryRecord('user',{short_url: params.short_url}).then(function(result){
    // console.log(result);
    // localStorage.setItem('result', JSON.stringify(result));
    return result;
});
// ...
于 2015-11-14T15:38:47.243 に答える