在车把中包含括号的问题处理属性

时间:2013-12-05 01:27:11

标签: javascript handlebars.js

我正试图找到一种方法来解决服务器提供的奇怪的属性问题。由于某种原因,服务器必须以propertyname []等格式发送一些属性,所以当我必须获取包含[]的属性的值时,会给我解析错误 propertyname []是一个数组

{{#if this.propertyname[].length}}
...some stuff in here
{{/if}}

我无法阅读这个奇怪的财产,也许我在这里遗漏了一些基本的东西。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

实际上,手柄允许您引用不是有效标识符的属性,例如! [@#+ * - ,只需使用segment-literal表示法来访问无效的属性:

this.[propertyname{}] // it equals to this['propertyname{}']

不幸的是,这种方法的前提是你不在路径文字中使用']'。

我认为更改属性名称(可能使用其他字符)或更新前端的数据结构都是解决此问题的可能方法。