流星车把模板如何评估参数

时间:2014-06-13 07:32:14

标签: meteor handlebars.js

我有一个参与者在这个模板中呈现:

<template name="participant">
    <div class="animated fadeIn">
      <a href="{{pathFor 'participants'}}">← Back</a>
      {{#with participant}}
        <div class="participant">
          <h3>{{fullname}}</h3>
            <dl>
                <dt>E-mail</dt>
                <dd>{{email}}</dd>
                <dt>Phone</dt>
                <dd>{{tel}}</dd>
                <dt>City</dt>
                <dd>{{zip}} {{city}}</dd>
                <dt>Creation time</dt>
                <dd>added {{created_on}}</dd>

            </dl>
            {{>quickfield name="email" value=email}}
          <p>&nbsp;</p>
          <h5><a href="#" class="delete">Delete</a></h5>
        </div>
      {{/with}}
    </div>
</template>

Quickfield模板的位置是:

<template name="quickfield">
    <input id="{{name}}" value="{{value}}" class="bound">
</template>

我想在模板调用中跳过第二个参数,称为“value”,因为它与名称参数相同。我们应该能够只用一个参数构建模板。

理想情况下,我应该这样:

{{>quickfield name="email"}}
<template name="quickfield">
    <input id="{{name}}" value="{{eval('this.' + name)}}" class="bound">
</template>

但这不起作用。我该怎么办?

THKS!

1 个答案:

答案 0 :(得分:0)

创建一个额外的帮助器:

UI.registerHelper('get', function(name) {
  return this[name];
});

现在您可以将模板重写为:

<template name="quickfield">
  <input id="{{name}}" value="{{get name}}" class="bound">
</template>