遍历 Ember 数据中的 DS.hasMany

Iterating over DS.hasMany in Ember data

我与 Ember 有真正的斗争。

在我的模型中我有一个属性:

options: DS.hasMany('UserOptions', {async: false})

在链接到此模型的视图中,我可以通过以下方式轻松访问此 属性:

{{#each options AS |option|}}
    something....
{{/each}}

这很有魅力。

然而,当我尝试在控制器中访问这个模型值时: this.get('model.options') 我没有获得一系列可爱的付款选项,而是获得了一个 ember 对象模型数组,而且我无法访问实际数据。

你们知道我如何在控制器中访问这些数据并处理它吗?

谢谢!

this.get('model.options')会给你RSVP.Promise,所以你需要使用异步代码。使用:

this.get('model.options').then(options => {
    options.forEach(option => {
        // do what you need with option
    })
});

下面的代码解决了我的问题:

@get('model.options').toArray().forEach((item) ->
  console.log(item.get('parameter_name')]
)

console.log(@get('model')) 确实在控制台中抛出了一些奇怪的东西,但是当我询问特定参数时,它就在那里!

我的问题是我试图打印出整个对象而不是特定值。值在那里,只是出于某种原因没有打印整个对象。