javascript - Handlebars - 如何访问 "each"范围内的模板数据?

标签 javascript handlebars.js each

我使用预编译的 Handlebars 模板。 我有以下代码:

<div id="{{ns}}paymentMethodsTabs">
    {{#each paymentMethods}}
        <button id="{{ns}}{{paymentCardCode}}">{{paymentCardCode}}</button>
    {{/each}}
</div>

在第一个 div 中,ns 模板数据可用并已设置。 但在 each paymentMethods 范围内,我无法访问它,我尝试了

<button id="{{../ns}}{{paymentCardCode}}">{{paymentCardCode}}</button>

但它也不起作用。 (在这种情况下,模板返回 null 而不是 HTML 代码,我猜那是因为它无法以某种方式找到引用,但我没有收到任何错误消息,而且确实很难调试,对此有什么建议吗?当我运行Handlebars.templates[path](data)时会发生这种情况

如何运行 each 循环并提供模板数据?

以下是我向模板提供的数据:

{
  "ns": 'main-layout-default-',
  "paymentMethods": [{
    "paymentCardCode": "CB",
    "contractId": "1234"
  }]
}

最佳答案

问题就在这里

{
  "ns": 'main-layout-default-', // <= missing comma
  "paymentMethods": [{
    "paymentCardCode": "CB",
    "contractId": "1234"
  }]
}

关于javascript - Handlebars - 如何访问 "each"范围内的模板数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29844822/

相关文章:

ember.js - Ember JS/Handlebars View 助手

javascript - 将自定义 Markdown 转换为 HTML?

variables - Sass - 在@each中使用不同的变量

javascript - 将数组 array 打印到选定的对象

javascript - Math.min 给出 NaN

javascript - 如何从 javascript 向 asp 页面传递值?

javascript - 不起作用的方法 Selection.removeRange()

backbone.js - 如何在 Marionette 3+ 中实现已弃用的 CompositeView 功能?

Jquery addClass 适用于宽度和高度,但不适用于背景和颜色

javascript - jquery .each 循环奇怪的行为