将参数传递给Blaze模板

时间:2015-07-04 18:25:30

标签: javascript html templates meteor meteor-blaze

说我有一个共同的标记,将在我的网站上重复,只有一些小差异。

例如,我有一堆<div>元素都有标题。

带有类section-title的元素都采用相同的方式,但它们的文本内容不同。

我想制作一个模板来代表一个标题,有点像这样:

<template name="section-title">
  <div class="section-title">
    <span> Profile </span>
  </div>
</div>

除此之外,我需要“Profile”可以互换,因为我有很多不同的部分:“profile”,“contact information”等。

在Blaze中执行此操作的最佳方式是什么?

1 个答案:

答案 0 :(得分:1)

您可以使用任一模板参数或将模板当前数据上下文设置为适当的参数列表。

HTML

<template name="sectionTitle">
  <section class="section-title">
    <span>{{title}}</span>
  </section>
</template>

{{> sectionTitle title="Profile"}}

<template name="parent">
  {{> sectionTitle args}}
</template>

JS

Template.parent.helpers({
  args: function(){
    return {
      title: "Profile"
    };
  }
});