如何在Meteor中包装小部件模板



假设我有一个小部件将显示图形,另一个小程序将在典型的仪表板中显示表格。由于小部件outter控件的一致性,我想将引导面板放在一个模板中,该模板对所有小部件都显示一致,类似于下面的模板:

<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>

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

是否可以像上面的"widgetBox"模板一样使用样板html,同时在面板主体中放置另一个模板?

当您希望一个外部模板重用多个内部模板时,您可以使用路由器{{> yield}}模式使用动态模板

前者通常用于主页面布局,尽管布局中可以有多个yield。

后者可能更适合小部件。

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

其中myTemplateName是辅助函数的名称,该函数返回与您创建的模板名称相对应的字符串。

相关内容

最新更新