lit-element 属性 观察者事件变化

lit-element property observer event change

在 属性 值更改事件上配置观察器的推荐方法。

目前正在使用更新后的方法并循环使用有效的 changedProperties 参数。

static get properties() {
  return {
    testprop: { type:String }, 
  };
updated(changedProperties) {
  changedProperties.forEach((oldValue, propName) => {
    if (propName=='testprop') {
      console.log('testprop CHANGED!');
      this.dosomething();
    }
  });
}

但与 Polymer 2.0 相比似乎过于复杂:

testprop: {
  type:String,
  value: '',
  observer: 'dosomething',
},

要观察 属性 事件变化和 运行 一些代码,是否有更简单/推荐的做事方式?

根据 Alan 的建议:

set testprop(val) {
  let oldVal = this._testprop;
  this._testprop = val;
  this.requestUpdate('testprop', oldVal);
  this.dosomething();
}
get testprop() { return this._testprop; }