我希望能够从parent-element的object literal属性初始化聚合子子元素。
这意味着语法如下:
<dom-module id="parent-element">
<template>
<child-element properties={{item}}></child-element>
</template>
</dom-module>
而不是:
<child-element property1="{{item.property1}}" property2="{{item.property2}}" ...></child-element>
有一种简单的方法吗?
答案 0 :(得分:0)
您可以在子元素中创建一个对象,观察此更改并将值分发给其他属性。
is="child-element",
properties: {
property1: String,
property2: String,
consolidated: {
type: Object,
observer: '_propertyChange'
},
_propertyChange: function(newValue) {
if (newValue.property1 && newValue.property1 !== this.property1) {
this.property1 = newValue.property1;
}
if (newValue.property2 && newValue.property2 !== this.property2) {
this.property2 = newValue.property2;
}
}
在父级元素中将项目分配给合并属性
<dom-module id="parent-element">
<template>
<child-element consolidated={{item}}></child-element>
</template>
</dom-module>