1
我讀過Meteor template helpers fire multiple times,並試圖在不涉及任何集合的情況下重現此問題。流星模板助手在每次通話時訪問
所以我就幫助這樣的:
Template.myTemplate.helpers({
test: function(){
console.log("Fired");
return {
name : "Foo"
};
}
});
而且模板看起來是這樣的:
<template name="myTemplate">
{{test.name}}{{test.name}}
</template>
在控制檯我期望看到「炒魷魚」只有一次,但助手叫實際上兩次?因此,如果我的幫手正在訪問收集並從那裏獲取數據,那麼每當我使用{{helper.key}}時,它都會執行查詢?這是應該如何工作?
感謝您的回答。但是,如果我讓我們說一個項目的編輯頁面,並且我想用值填充輸入字段,那麼我將調用{{item.keyOne}},{{item.keyTwo}},我將需要實際的數據,那麼每次都會調用fetch()?那麼如何解決這個問題呢? – SteelzZ
我想你會調用一次,然後跟着緩存。因爲當你使用'item.'時,你將使用'findOne()'。無論哪種方式內存使用/差異是微不足道的操作開銷是非常低的,因爲一切都已經在內存 – Akshat
我想通過我的助手中的API從另一個網站獲取一些遠程內容。對於這樣的場景? – Pramodh