2013-04-23 36 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