すぐに次の問題があります。
Ember のコンポーネント内に次の 2 つのアクションがあります。
createData: function(user) {
let collection = [];
for (let i = 0; i < user.posts.length; i++) {
let data = this.send('createSingleData',user.posts[i], user, 'post');
console.log(data);
collection.push(data);
}
return collection;
},
createSingleData: function(data, user, type) {
let entitySkeleton = {
name: data.place.name,
belongsTo: user.id,
position: {
data.place.location.longitude,
data.place.location.latitude
}
};
console.log(entitySkeleton);
return entitySkeleton;
}
最初のログ (createSingleData 内、ログに記録された値を返す直前) は、予想どおり、entitySkeleton をオブジェクトとしてコンソールに書き込みます。
ただし、console.log(data) (createData 内) は「未定義」をコンソールに書き込みます。
私が尊重しなかった非同期性の側面はありますか?
PS: createSingleData 内のパラメーターもログに記録しました。それらはすべて適切に設定されています。変数コレクションも「未定義」にプッシュされるだけです。