2013-10-01 82 views
0

我有一個集合,有字段;名字,姓氏和形象。流星模板圖像重繪

當我在#each循環中使用它,並獲取新數據時,#each循環重繪圖像。 「#isolate」不適合它。

每一個新記錄都到了頁面,圖像再次被重新繪製。

<head> 
    <title>image</title> 
</head> 

<body> 
    {{> records}} 
</body> 

<template name="records"> 
    <table> 
     {{#each records}} 
     <tr> 
      <td>{{name}}</td> 
      <td>{{surname}}</td> 
      <td><image src="/{{src}}" /></td> 
     </tr> 
     {{/each}} 
    </table> 
</template> 

我該如何解決?

對不起,我的英語:)

謝謝大家

回答

1

您可以通過模板分成兩個解決這個問題。當它們分開時,流星只會更新已經改變的記錄。

<template name="records"> 
    <table> 
    {{#each records}} 
     {{>record}} 
    {{/each}} 
    </table> 
</template> 

<template name="record"> 
    <tr> 
     <td>{{name}}</td> 
     <td>{{surname}}</td> 
     <td><image src="/{{src}}" /></td> 
    </tr> 
</template> 
+0

第一個數據來了,但當我插入新的數據,它說:「從Deps的例外計算:錯誤:無法在同一分支中創建第二個地標「 –

0

如果你完全想在這裏得到擺脫任何反應的,一定要正確使用{{#isolate}}

這將防止(IE)records.insert(...);

<template name="records"> 
    <table> 
     {{#isolate}} 
     {{#each records}} 
     <tr> 
      <td>{{name}}</td> 
      <td>{{surname}}</td> 
      <td><image src="/{{src}}" /></td> 
     </tr> 
     {{/each}} 
     {{#isolate}} 
    </table> 
</template> 

但這重新渲染將不會:

<template name="records"> 
    <table> 
     {{#each records}} 
     {{#isolate}} 
     <tr> 
      <td>{{name}}</td> 
      <td>{{surname}}</td> 
      <td><image src="/{{src}}" /></td> 
     </tr> 
     {{#isolate}} 
     {{/each}} 
    </table> 
</template>