2012-04-20 66 views
1

我在mongo中有一個樹結構,每個節點都有其父節點的標識。事情是這樣的:關於爲嵌套集合構造模板的建議

{ "_id" : 1 } 
{ "_id" : 2, "parent" : 1 } 

而且整棵樹被渲染的每個節點遞歸地使用這些模板呈現:

<template name="thing"> 
     <div class="project open {{status}}" data-id="{{_id}}" id="thing_{{_id}}"> 
      <div class="name">{{name}}</div> 
      <div class="children" id="children_{{_id}}"> 
       {{> childrenThings }} 
      </div> 
     </div> 
</template> 

<template id="childrenThings" name="childrenThings"> 
    {{#each children}} 
     {{> thing}} 
    {{/each}} 
</template> 

在模板的「東西」調用模板「childrenThings」,呼籲模板「事情「,等等,直到所有節點重新呈現。

現在,當我改變一個嵌套的項目,我看到所有節點,直到它的根父母重新呈現。我應該如何設置模板,以便只有當前模板被重新渲染,而不是所有的父節點直到根?

謝謝:)

+1

http://docs.meteor.com/#meteor_ui_chunk可以做你想做的。 '''如果用於生成該子字符串的數據發生更改,則只會更新與該子字符串對應的元素,而不會更新該元素之前和之後的元素。''' – lashleigh 2012-04-21 08:33:37

+0

@lashleigh該鏈接已死亡,並且我正在尋找類似的固定。任何想法? – Tyrsius 2013-01-08 16:50:22

+0

@Tyrsius不幸的是,我在過去幾個月裏沒有做過任何流星,它一直在迅速發展;現在我看到了v0.5.4,我認爲這個評論發佈了v0.3.5。我可能不得不重新閱讀文檔才能趕上。 http://docs.meteor.com/#reactivity抱歉:( – lashleigh 2013-01-08 22:17:34

回答

0

當子模板重新渲染,他們解僱了父母的呈現回調。所以這並不意味着你的整個父樹已經從字面上脫離DOM並重新開始。這僅表示一些模板範圍內的DOM節點已被渲染。這有點令人困惑。如果你注意到閃爍或其他奇怪的行爲,那就不同了。但是你的代碼對我來說看起來沒問題。