現在、次のようないくつかの Ember 配列を観察しています。
observe_array: function() {
this.get("my_array").forEach(function(e,i) {
// do something
});
}.observes("my_array.@each");
ほとんどの場合、my_array が更新されると、複数の要素が一度に追加されます。ただし、各要素が追加されるたびにオブザーバーが 1 つずつ起動するため、非常に非効率的になります。これをより効率的に行う方法はありますか?基本的に、「my_array」に基づいて変更された配列を持つことができる必要があります
参考までに、my_array の実際のサイズは 600 ~ 1200 要素です。「何かをする」ブロックには、文字列から Date オブジェクトを作成し、各要素を json 表現に変換するなど、もう少し時間がかかるいくつかの操作が含まれます。
オブザーバーを実行する代わりに、cacheable() メソッド/フラグを使用してプロパティも試しましたが、速度が大幅に向上することはありませんでした....