gar*_*ryx 3 javascript polymer polymer-1.0
如果我将属性设置如下:
properties: {
myProp: {
type: Object,
notify: true,
observer: '_onChangedByObserver',
}
},
listeners: {
'my-prop-changed': '_onChangedByListener'
}
Run Code Online (Sandbox Code Playgroud)
当我运行的代码,无论是_onChangedByObserver和_onChangedByListener随时被称为myProp改变.
那么如何确定使用哪个?
ps:我想知道变化是来自外部消费者还是内部分配.我该怎么办?
谢谢!!
当属性的值发生更改时,将调用观察者.Listeneres是所有类型事件的事件处理程序,而不仅仅是属性更改.要使观察者工作,您不需要设置notify: true,如果您希望在属性更改时调用侦听器,则这是必要的.方法签名也不同.当侦听器在详细信息字段中获取具有新值的事件时,观察者将传递新值和旧值.
我认为没有办法说明在两种情况下导致变化的原因.