我试图将复选框的状态绑定到hostProperty
的特定嵌套子属性。复选框在嵌套的“ dom-repeat”模板内生成(每innerObj
遍历outerObj
),hostProperty
的所需子属性相对于其他对象的子属性,即的格式为hostProperty[outerObj.name][innerObj.name]
。
我一直无法找出子属性的正确路径名。
我尝试了以下操作,但都失败了:
-hostProperty.outerObj.name.innerObj.name
(可能会寻找未定义的hostProperty.outerObj.name
)
-['hostProperty', outerObj.name, innerObj.name]
(基于documentation for specifying paths)
-hostProperty[outerObj.name][innerObj.name]
-hostProperty.outerObj['name'].innerObj['name']
<template is="dom-repeat" items="[[outerObj_arr]]" as="outerObj">
<tr>
<th scope="row">[[outerObj.name]]</th>
<template is="dom-repeat" items="[[innerObj_arr]]" as="innerObj">
<!-- broken path name below -->
<td><paper-checkbox checked="[[hostProperty.outerObj.name.innerObj.name]]"></paper-checkbox></td>
</template>
</tr>
</template>
答案 0 :(得分:1)
您无法尝试从html模板执行操作。 要使此工作正常进行,您需要使用辅助方法,例如:
<td><paper-checkbox checked="[[_getChecked(hostProperty, outerObj.name, innerObj.name)]]"></paper-checkbox></td>
然后在js中
_getChecked(list, key1, key2) {
return list[key1][key2];
}