Can't assign this in constructor
本问题已经有最佳答案,请猛点这里访问。
我正在尝试将
下面将引发一个错误。我该怎么做?
1 | this = {...this, ...values} |
可以使用object.assign方法扩展
1 2 3 4 5 6 7 8 | class Foo { constructor (props) { Object.assign(this, props); } } const foo = new Foo({ a: 1 }); console.log(foo.a); // 1 |
看到您使用了Spread运算符,看起来您正在使用ECMAScript的第3阶段建议。
https://github.com/tc39/proposal-object-rest-spread
尝试object.assign方法:
https://developer.mozilla.org/en-us/docs/web/javascript/reference/global_objects/object/assign
object.assign()方法用于将所有可枚举的自身属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。
Object.assign(target, ...sources);