我有一个csv文件,我正在解析为JSON,然后发送到Mustache.js。问题是一些变量名称形成不好,所以我最终得到的对象可能是这样的:
{
'Num.': '1234',
'Pass-through': 'yes'
}
那么我如何在Mustache模板中使用这些变量呢?我尝试了几种不同的方法。
<td>{{ Num. }}</td>
<td>{{ 'Num.' }}</td>
<td>{{ ['Num.'] }}</td>
但它们都不起作用(如果他们这样做我会更惊讶),并且在文档中找不到有关如何转义变量名的任何内容。
答案 0 :(得分:1)
手册
概述:|插值标签用于集成动态内容 进入模板。
标记的内容必须是非空格 字符序列不包含当前的结束分隔符。
此标记的内容命名用于替换标记的数据。一个时期 (
.
)表示当前位于上下文之上的项目 应该使用堆栈;否则,名称解析如下:
- 按期间拆分名称;第一部分是要解决的名称,任何 剩下的部分应该保留。
- 从上到下遍历上下文堆栈,找到第一个上下文 这是a)包含名称作为键的哈希或b)响应的对象 使用给定名称的方法。
- 如果上下文是哈希值,则数据是与之关联的值 名称
- 如果上下文是对象,则数据是由...返回的值 具有给定名称的方法。
- 如果在步骤1中保留了任何名称部分,则应解决每个部分 对仅包含前者结果的上下文堆栈 解析度。如果任何部分未能解决,则应考虑结果 falsey,并应插入为空字符串。
醇>在插值之前,应将数据强制转换为字符串(并在适当时进行转义)。
简而言之:您不能拥有名称为'Num.'
的元素。