2

我正在尝试使用带有 JSON 数据的dust.js 模板,该模板的键包含特殊字符,如“:”和“#”。

如何在模板中指定这些键?

例如:

JSON data:
{
    "opensearch:totalResults": 200,
    "#text": "some data"
}

dust.js 模板:

<div>There are {opensearch:totalResults} items found</div>

这不能正确解决,只是打印模板文本而不是替换为 JSON 数据。

4

1 回答 1

5

问题是密钥在dustjs中无效。这是我们用来验证密钥的pegjs规则:

key "key"
 = h:[a-zA-Z_$] t:[0-9a-zA-Z_$-]*
 { return h + t.join('') }

这意味着密钥仅在以下情况下有效:

  • 以字母、下划线或 $ 开头
  • 其余键是字母、下划线、$ 或破折号 (-)

如您所见,# 和 : 不是作为键的一部分的有效符号。

如果你需要添加它,你可以打开一个问题或者只是发送一个拉取请求,解释你为什么需要这个功能。

于 2013-01-28T14:01:52.553 回答