2015-12-01 44 views
0

假设我有一个将显示图形的小部件和另一个将在典型仪表板中显示表格的小部件。由于这个小工具的outter控制的一致性的,我希望把引导面板在显示始终如一地为所有小工具模板,类似下面的模板:如何在Meteor中封装Widget模板?

<template name="widgetBox"> 
    <div class="col-xs-12 col-sm-6 col-md-4"> 
    <div class="panel panel-default"> 
     <div class="panel-heading"> 
     {{this.title}} 
     <span class="pull-right clickable" data-effect="fadeOut"><i class="fa fa-chevron-down"></i></span> 
     </div> 
     <div class="panel-body"> 
     <!-- I want the widget to go here --> 
     </div> 
    </div> 
    </div> 
</template> 

我不知道如何做到这一点迭代集合,因为我想用他们自己的模板来控制每个窗体小部件的外观。例如,两个表视图窗口小部件可能共享一个包含排序或过滤的模板,而两个图形窗口小部件将具有完全不同的需求和布局。

是否有可能使用样板html,如上面的“widgetBox”模板,而将另一个模板放在面板体内?

回答

2

当你想要一个外模板重复使用多个内模板,你可以使用一个路由器{{> yield}}模式使用dynamic templates

前者通常用于主页面布局虽然可以有多个产量在布局中。

后者可能更适合小部件。

{{> Template.dynamic template=myTemplateName [data=data] }} 

其中myTemplateName是返回与您已经创建了一个模板的名称的字符串辅助函数的名称。

相关问题