1

在 Polymer 1.0 中,我可以声明属性:

properties: {
    salary: {
        type: Number,
        value: 80
    }
}

现在在 Polymer 2.0(创建一个类)中,我应该编写如下方法:

static get properties() {
    return {
        salary: {
            type: Number,
            value: 80
        }
    }
}

但现在this.propertiesnull。如何访问该properties字段(而不是 的值properties)?

4

1 回答 1

0

this.properties尝试访问实例字段(不包括静态字段)。由于properties是一个static字段,因此您必须使用this.constructor.propertiesXFoo.properties

例子:

class XFoo extends Polymer.Element {
  static get properties() { ... }

  constructor() {
    super();

    // this.constructor === XFoo
    console.log('this.constructor.properties', this.constructor.properties);
    console.log('XFoo.properties', XFoo.properties);
  }
}

密码笔

于 2017-04-12T02:26:03.237 回答