Ember 遍历承诺/store.findAll return 值

Ember Iterating through a promise/ store.findAll return value

在我的路由器中我有代码let users= this.store.findAll('user')

我的模型 user.js 将是 name: DS.attr('string'), userName: DS.attr('string'), company: DS.attr('string')

在我的 mirage fixture 中,我将用户对象定义为 [{'name':'smith','userName':'smith123'},{'name':'james','userName':'james222'}

在我的路由器中,当我执行 let users= this.store.findAll('user') 时,我想遍历 users 并为每个用户手动添加 company。但是我无法找到访问路由器 js 文件中的用户对象的方法。

我可以在 .hbs 文件中迭代相同的对象。但无法找到在路由器 js 文件中迭代它的方法。你能告诉我怎么做吗?

findAll 方法(以及 findRecord 也是)returns 一个 promise,不是可迭代的对象。您可以在 promise 得到解决后遍历用户。为此,您应该使用 then 方法:

this.store.findAll('user')
  .then(users => {
    /*Iterate here*/
  })
  .catch(error => {
    /*Do something to inform user about network/server/request error here*/
  });