将当前控制器的模型传递给组件会导致Ember中未解析的Promise Array

时间:2014-03-26 19:38:06

标签: ember.js ember-data

我试图将当前上下文的模型传递给组件。我在异步模式下使用FIXTURE数据,当promise在模型钩子中解析并在我的示例{{#each}}帮助器中渲染时很好,当我尝试传递此模型的时候,#I' s数组到组件,它似乎没有通过已解决的承诺,而是通过了 未解决的承诺和组件的排序方法错误。

例如,这是我的模型和FIXTURES:

App.Forecast = DS.Model.extend({
 forecastName: DS.attr('string'),
 campaignId: DS.attr('string'),
 datapoints: DS.hasMany('datapoint',{ async: true }) 
});

App.Forecast.FIXTURES = [
{
 id: 1,
 forecastName: 'Winter holidays',
 campaignId: '123435',
 datapoints: [1,2,3,4]
},
...
];

App.Datapoint = DS.Model.extend({
 label: DS.attr('string'),
 value: DS.attr('number')
});

App.Datapoint.FIXTURES = [
{
 id: 1,
 label: "April",
 value: 50
}, {
 id: 2,
 label: "May",
 value: 100
},
...
];

当我点击单个预测的上下文时,这可以很好地呈现:

{{#each datapoints}}
  <li>{{label}}: {{value}} </li> 
{{/each}}

但是当我尝试将datapoints数组传递给我的组件时,它并没有通过已解析的promise数组:

{{data-sort forecastName=forecastName data=datapoints}}

jsfiddle中的示例: Does not work

这里有一个输出应该的样子(我通过将硬编码数组传递给组件而作弊): Works by cheating

提前致谢

0 个答案:

没有答案