聚合物:我的元素维持了多少观察者?

时间:2015-02-08 23:14:05

标签: polymer observers

给定一个元素实例,如何查看它维护的观察者数量?

我正在试图确定这些实现中的任何一个是否更昂贵。

Polymer({
  fooChanged: function() {
    this.bar = foo.baz;
  }
}

Polymer({
  computed: {
    'bar': 'foo.baz'
  }
}

我怀疑他们是等同的(除了一个人在看foo,另一个人在看路径)但我想确定。

2 个答案:

答案 0 :(得分:1)

在内部,Polymer使用Node.bind()来绑定属性更改。 它将使用PathObserver来观看'foo.baz',当然,观察这样的计算对象与单个属性相比会更慢。

https://www.polymer-project.org/docs/polymer/node_bind.html

答案 1 :(得分:0)

您可以检查chrome dev工具中的所有事件侦听器。在控制台中选择ID,在右侧选择“事件监听器”选项卡。

请参阅: Using Chrome, how to find who's binded to an event?

但我怀疑这会向你展示任何表现明智的东西。我认为最好在chrome dev工具的配置文件选项卡中使用CPU配置文件。