是否有其他方法可以观察Google Polymer 1.0中对象的子属性的更改?

时间:2015-09-08 17:14:43

标签: routing polymer

我在Google Polymer网站上尝试了深层路径观察示例,但它对我的情况不起作用。我想要观察的子属性是一个数组,当我转到另一个哈希URL时会被更改。问题是我正在使用一个处理这种变化的库,所以它不使用聚合物的“推,弹,移位和拼接”,如果不这样,Polymer就不会识别阵列变异。任何想法将不胜感激!

2 个答案:

答案 0 :(得分:0)

当我尝试通知计算属性中数组的更改时,我认为这是一个类似的问题。

在我的情况下,我想知道它的孩子何时被修改,以便我可以用改变的孩子重新计算其他东西。以下是聚合物元素的工作代码片段:

properties: {
    choices: {
        type: Array,
        notify: true,
        value: []
    },
    choicesTransposed: {
        type: Array,
        notify: true,
        computed: '_transposeChoices(choices.*)'
    }
},

_transposeChoices: function(change) {
    var choices = change.base;
    // do something with choices
}

最初我有_transposeChoices(choices)但是在choices个孩子被修改时从未调用过。将其更改为_transposeChoices(choices.*),然后在计算功能中使用change.base,这对我有用。

答案 1 :(得分:0)

您始终可以使用observe-js观察对象,并通过custom event与Polymer进行互动。