我对ember非常陌生,我想要做的是将模型中的数据转换为数组。
目前我在做:
var playerList = App.Player.find().toArray();
但它并没有给我返回一系列玩家,而是返回了一系列物品?例如:
<App.Player:ember311:1>,<App.Player:ember332:2>,<App.Player:ember338:3>,<App.Player:ember344:4>,<App.Player:ember350:5>,<App.Player:ember356:6>,<App.Player:ember362:7>,<App.Player:ember368:8>
任何帮助将不胜感激。谢谢!
答案 0 :(得分:1)
App.Player.find()
会返回一个承诺,因此您应该等到记录完全加载后再对它们进行操作。从你的问题来看,玩家对象的外观并不完全清楚。但是为了得到你的球员,特别是你的球员的属性,你可以做类似的事情:
var playerList = App.Player.find().then(function (result) {
// This callback will fire when array is loaded
// and this is the correct way to get to the records
result.objectAt(0).get('name'); // assuming "name" is a property of your model
// here you can then loop over your obejcts
result.forEach(function(item) {
console.log(item.get('name'));
});
});
希望它有所帮助。