2014-01-06 35 views
0

對不起,如果這個問題太基本了,我對Ember.js很新穎......我讀過關於didInsertElement/willDestroy是使用jQuery轉換的一個好處灰燼模板,但我不知道在哪裏可以基於屬性顯示的內容的情況下被設置,像這樣:Ember.js和jQuery轉換,基於屬性

<div>First content area</div> 

{{#if isSomeProperty }} 
    <div>Second content area</div> 
{{/if}} 

<div>Third content area</div> 

有我添加一個jQuery了slideDown();舉例的方式,當isSomeProperty設置爲true?或者我真的只需要將第二個內容區域的代碼放在組件中,這樣我就可以使用didInsertElement/willDestroy?

回答

0

你讀過關於Observers嗎? http://emberjs.com/guides/object-model/observers/

您可能想在相應的花括號視圖中觀察isSomeProperty,然後檢查它的值並在isSomeProperty爲true時執行動畫。讓我知道如果你需要任何幫助;)

+0

然後,我只是動畫的內部div的隱藏,而不是試圖將其附加到顯示/隱藏的生成的ember-view div的? –

+0

您也可以在'didInsertElement'中檢查屬性,然後開始動畫。這只是在isSomeProperty設置爲true時插入父元素的情況下啓動動畫的一種方式。 –

+0

另外如果你不知道,你可以使用'this。$()。find('。child-element')'來定位一個子元素。 –