我对Ember.js比较陌生,到目前为止,我还有一些事情我真的没有。我在模板中使用了一个组件,并传入了一个模型和一个值。该值用于过滤模型(我还需要整个模型,所以我不能通过过滤版本)。当我第一次渲染它时,一切都很好,但如果我更改传入的值,组件会清空该部分,这依赖于模型(很难解释;))
index.hbs:
{{#content-view contents=contents parentId=sectionId}}{{/content-view}}
component.hbs:
<h1>Content</h1>
<p>{{parentId}}</p> //this part changes correctly
{{#each filteredContents as |fContent|}} //this part gets empty on change of parentId
<p>{{fContent.type}}</p>
{{/each}}
component.js:
filteredContents: function() {
return this.get('contents').filterBy('parentId', this.get('parentId'));
}.property('parentId')
就我现在所知,parentId被正确传递,并且第一次调用组件时,filteredContent
也表现得正确,但是一旦我更改了parentId,似乎就有了什么错。