小胡子为每个对象使用.get(key)函数

时间:2013-06-18 20:55:57

标签: javascript templates mustache

我有一些看起来像的JSON模型:

{entries: [Entry{get: function}, Entry{get: function}]}

然后我想迭代每个条目并使用get函数来获取属性。我遇到问题的部分是调用get函数。我试过了:

{{#entries}}
    <tr>
        <td class="time-col">{{get('eventTime')}}</td>
        <td class="description-col">{{{this.get('Description')}}}</td>
    </tr>
{{/entries}}

以及其他一些事情似乎无法弄明白。他们提到了文档中的函数,但它只是用于渲染其他东西的函数。

任何提示将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:0)

Mustache不支持{{get('eventTime')}}语法。 Mustache标记必须包含name之类的标识符,或foo.bar之类的复合表达式,而不像字符串文字的函数调用。

我建议你“准备你的ViewModel对象”,这意味着给Mustache引擎一个精心设计的Javascript对象,其中包含与模板标识符匹配的键,而不是你描述的javascript对象。

而不是Entry{get: function},请提供{eventTime:..., Description:...}

是的,这个准备阶段是一件苦差事,困扰所有严格遵守规范的Mustache实现。