babel-plugin-transform-class-properties处理属性的方式

时间:2018-06-28 07:58:39

标签: babel

为什么babel-plugin-transform-class-properties添加属性的值是实例的函数而不是构造函数的原型?

class Bork {
//Property initializer syntax
instanceProperty = "bork";
boundFunction = () => {
  return this.instanceProperty;
}

//Static class properties
static staticProperty = "babelIsCool";
static staticFunction = function() {
    return Bork.staticProperty;
  }
}

let myBork = new Bork;

//Property initializers are not on the prototype.
console.log(myBork.__proto__.boundFunction); // > undefined

//Bound functions are bound to the class instance.
console.log(myBork.boundFunction.call(undefined)); // > "bork"

//Static function exists on the class.
console.log(Bork.staticFunction()); // > "babelIsCool"

为什么原型中没有属性“ boundFunction”?

0 个答案:

没有答案