我想了解在attached()
和detached()
事件中聚合物组件内设置和取消设置观察者的正确方法,因此只有在元素被连接后才能开始观察。有任何想法吗?如何在Polymer中设置和取消设置观察者?
1
A
回答
2
目前,没有公开的API来强制添加观察者(但存在私有的),并且根本没有API来删除它们。
私有函数_addComplexObserverEffect(...)
在一个或多个属性上创建观察者。它是处理Polymer对象observers
数组中每个观察者表达式的函数。注意使用私有函数的警告是它可能在下一个版本中不可用。
你可以使用这样的:
Polymer({
...,
properties: {
foo: String
},
attached: function() {
this._addComplexObserverEffect('_fooChanged(foo)');
},
_fooChanged: function(foo) { ... }
});
2
如果你不想使用的私有方法和它只是时间问题,而不是一个需要有ñ动态观察者,只要元素已连接就设置一个道具,将该道具添加到观察者,并且仅在连接时执行。
Polymer({
is: 'my-el',
properties: {
bar: String,
attached: {
type: Boolean,
value: false
}
},
observers: [
'_barChagned(bar, attached)'
],
_barChagned: function(bar, att) {
if(!att) return;
// Do your stuff
},
attached: function() {
this.set('attached', true);
}
});
相关问题
- 1. 如何设置和随后取消多个观察者在REDX-SAGO
- 2. 如何在Netbeans中设置观察点?
- 3. JetBrains WebStorm忽略观察者设置
- 4. 你如何在Webstorm中设置观察者?
- 5. Vue.js如何在计算属性中设置观察者?
- 6. 如何在Polymer中设置flex-shrink:0
- 7. 如何在JSF2.0中设置和取消设置
- 8. 无法在Swift中设置获取者和设置者
- 9. 在Magento中设置观察者的正确方法是什么?
- 10. 如何在Autodesk Viewer中设置性能和外观设置?
- 11. 设置和取消设置Cookie
- 12. 观察者设计模式和其他
- 13. Javascript MVC - 观察者位置
- 14. 如何在Linux中通过procfs设置观察点?
- 15. 如何在PhpStorm中正确设置scss文件观察器?
- 16. 如何在crontab中取消设置MAILTO?
- 17. 如何在HTTPUrlConnection中取消设置ContentHandlerFactory
- 18. PHP观察者模式/魔术设置/ proxing
- 19. 将属性设置为undefined时没有通知观察者
- 20. 设置观察到的值单击
- 21. 取消可观察订阅并等待观察者完成
- 22. 记录获取者和设置者
- 23. 商店取消订阅与观察者
- 24. 如何在芹菜中设置消费者优先级 - rabbitmq设置?
- 25. 如何在取消设置数组值后设置键值?
- 26. 如何设置从可观察值到Angular 2中的变量
- 27. 如何在观察者
- 28. cfhtmlhead重置/取消设置或取消?
- 29. 取消设置和重置某些位
- 30. 设置/取消设置下划线TextView
有没有计划能够在未来做到这一点?公开设置和未设置的方法? –