0
私のルートモデル呼び出しですべてのレコードを取得していますが、コンポーネントの1つでは、レコードのサブセットのみを表示したいだけです。私はmodels.filter(somefilter)
と呼んでこれをやっています。この問題は、filter
がArray
ではなくDS.RecordArray
を返し、一部のアクションによってモデルがストアから削除されると、Array
は更新されず、そのモデルのコンポーネントは削除されません。Ember DS.RecordArray filter items
DS.RecordArray
を返すフィルタを作成する方法、または既存の配列をDS.RecordArray
に変換する方法を知っている人はいません。
// routes/index.js Route.extend({ model() { return this.store.findAll('user'); } }); //index.hbs {{some-component users=model}} //some-component.js Component.extend({ filteredUsers: Ember.computed(function() { return this.get('users').filter(...); }) }); //some-component.hbs {{#each filteredUsers as |user| {{other-component user=user}} {{/each}}