我正在尝试使用包含 JSON 数据的dust.js 模板,该模板的键包含特殊字符,例如“:”和“#”。
如何在模板中指定这些键?
例如:
JSON data:
{
"opensearch:totalResults": 200,
"#text": "some data"
}
dust.js 模板:
<div>There are {opensearch:totalResults} items found</div>
这无法正确解析,只是打印模板文本而不是替换为 JSON 数据。
最佳答案
问题是 key 在dustjs中无效。这是我们用来验证 key 的pegjs规则:
key "key"
= h:[a-zA-Z_$] t:[0-9a-zA-Z_$-]*
{ return h + t.join('') }
这意味着 key 仅在以下情况下有效:
- 以字母、下划线或 $ 开头
- 其余键为字母、下划线、$ 或破折号 (-)
如您所见,# 和 : 不是 key 的有效符号。
如果您需要添加它,您可以打开一个问题或只是发送一个拉取请求,解释您为什么需要此功能。
关于json - dust.js 键中的特殊字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14554688/