2017-08-08 67 views
0

我有一個模板,其中有表格。我正在創建一個包含表和過濾條件的組件。每當有過濾條件的變化,我需要更新表。爲此,只要組件操作被調用,我想從組件操作中重新渲染表。Ember重裝,重組組件模板

如何從 重新渲染/刷新組件的動作?

+2

EmberJS鼓勵*數據向下,採取行動*方法。這意味着一旦模型發生變化,底層組件應該更新視圖。這會幫助我們看到你的代碼是什麼樣的 – Pavol

回答

0

這是在燼自動完成。只要數據發生變化,它就會自動渲染。我遇到的問題是標籤,它沒有改變屬性的鉤子。

0

讓我們假設你有這樣的組件:

import Ember from 'ember'; 

const {get} = Ember; 

export default Ember.Component.extend({ 
    filter: '', 
    data: ['foo', 'bar', 'baz'], 
    filteredData: Ember.computed('filter', 'data', { 
     get() { 
      const filter = get(this, 'filter'); 
      return get(this, 'data').filter(item = item.indexOf(filer) > 0); 
     } 
    }), 
}) 

那麼您可以在模板中只是使用:

{{#each filteredData as |item|}} 
    {{item}} 
{{/each}} 

每當變更filter屬性,這將自動更新。