2013-04-23 43 views
1

這個queston /答案(第二個答案)Dynamically loading templates in Meteor.js將數據傳遞給動態創建與流星

我已經建立了在當前顯示的模板助手和我動態返回模板跟進模板。這很好。

Template.template1.helpers({ 

    dynamicView: function(){ 
     return Template['dynamic_template'](); 
    } 
}) 

這結束了顯示模板1我的html:

問題:

  1. 我如何將數據傳遞給AS公司的創建是這個模板,我可以做這樣的事情:

    Template ['dynamic_template'](data1,jsonData2);

  2. 我希望dynamicView幫助器在template1中也是動態的,因爲它可以根據其他一些標準具有不同的模板。我可以在這裏使用會話,並更改dynamicView返回語句如下:

    dynamicView:function(){ return Session.get('dynamicTemplate'); }

和其他地方Session.set('dynamicTemplate', Template['dynamic_template']());這工作,但它是推薦。這只是一個字符串,但我關心的性能問題,並傳遞我的模板的尺寸被動

回答

3

OK我想生病了分裂我的答案了:

以1

模板編譯車把模板,這樣你只需要提供一個上下文給他們,讓車把數據可以被填滿:

data = {name1:value1, name2:value2} 
return Template['dynamic_template'](data); 

這樣{{name1}}{{name2}}得到與value1和0123填充分別爲。

隨着2

是應工作,就可以通關,這將釋放出HTML作爲結果的任何數據。對於非常詳細的視頻廣播,請查看模板功能上的EventedMind截屏:http://www.eventedmind.com/posts/meteor-rendering-template-functions

模板系統的用例可能並非如此。您可能需要使用Meteor.render,但這取決於您想要執行的操作。

儘管Session名字,它只是一個反應JavaScript變量所以它應該是罰款與大弦太,將在一個普通的JavaScript變量

+0

被用來當我結束了不同的處理這個問題一樣,這個信息非常有用。感謝您的資源 – Warz 2013-04-23 01:37:12