我確定這個基本問題有一個簡單的解決方案,但坦率地說,我無法在Emberjs.com和Stackoverflow上找到它(也許我問錯了問題)。創建一個Ember.Object的數組
我正在使用amChart庫來繪製圖表數據。 amChart要求我傳遞一個「標準」對象數組。所以我嘗試使用toArray()方法將我的Ember.object轉換爲數組。但我明白,現在toArray()方法創建一個Ember.objects數組,結果amChart找不到我在amChart中映射的屬性。
換句話說,我需要一個數組,其屬性可以通過常規javascript語法(array [1] .attribute)而不是'object.get('attribute')'訪問。
或者我應該採取另一種方法呢?
UPDATE
從下面我的結論是,我需要創造amChart新陣列的答案:
chartData: function() {
var statVals = this.get('chapters.statVals');
var statArray= statVals.toArray();
var amCharts = [];
var chartData = [];
for (var i = 0; i < statArray.length; i++) {
chartData.push({
time: statArray[i].get('time'),
value: statArray[i].get('value'),
});
}
return chartData;
}.property(),
如果任何人有一個更有效的/更好的灰燼方式來處理這個問題,我很樂意修改這個解決方案。
得到與你的數據看起來像一個例子的小提琴? – givanse 2014-12-06 14:57:30