【发布时间】:2015-06-09 04:44:30
【问题描述】:
我正在尝试弄清楚如何在聚合物中使用 here 中描述的 2-way 通知
虽然这解释了有一些机制可以通知子元素上的对象是否已更改:
当属性的子属性配置为 type: Object 改变,一个元素触发一个非冒泡改变的 DOM 事件 detail.path 值指示对象上的路径 改变了。
但它没有提供任何线索(我可以整理出来)根据这种变化编写某些行为的语法看起来如何。
例如,如果我有父母:
<dom-module id="parent-element">
<template>
<child-element obj="{{myObj}}"></child-element>
</template>
<script>
Polymer({
is: "parent-element",
myObj: {
type: Object
},
parentClick: function(){
this.myName = "Parent";
},
myObjChanged: function(){ //How to handle this event?
console.log("I have no idea what I'm doing")
}
});
</script>
我有一个子元素:
<dom-module id="child-element">
<template>
<span on-click="childClick">Click me</span>
</template>
<script>
Polymer({
is: 'child-element',
properties: {
obj: {
type: Object,
notify: true
}
},
ready: function(){
this.obj = {foo: "bar"}
},
childClick: function(){
this.obj.foo = "baz"
}
});
</script>
当点击孩子时,我希望某个事件会触发并被父级拾取,但我不知道如何在父级上为该事件编写脚本。我错过了什么?
【问题讨论】:
标签: javascript polymer