Javascript 在ES7中不使用构造函数将数据传递给类
我尝试使用新的ES7语法将属性传递给类,而不使用构造函数 我知道我们可以通过构造函数传递:Javascript 在ES7中不使用构造函数将数据传递给类,javascript,class,ecmascript-2016,Javascript,Class,Ecmascript 2016,我尝试使用新的ES7语法将属性传递给类,而不使用构造函数 我知道我们可以通过构造函数传递: class MyClass { constructor(pacman) { this.pacman = pacman; } } ... const myInstance = new MyClass({food:'........'}); 但是我们如何在ES7中使用“无构造器”语法呢 失败代码: class MyClass { static pacman; // u
class MyClass {
constructor(pacman) {
this.pacman = pacman;
}
}
...
const myInstance = new MyClass({food:'........'});
但是我们如何在ES7中使用“无构造器”语法呢
失败代码:
class MyClass {
static pacman; // undefined
pacman = this.pacman; // undefined
this.pacman = pacman; // Syntax error: unexpected token .
pacman = this.pacman.bind(this); // Cannot read property 'bind' of undefined
}
...
const myInstance = new MyClass({food:'........'});
但是我们如何在ES7中使用“无构造器”语法呢
ES2016中没有无构造函数语法。如果您提到的仍然是实验性的:类字段仅适用于使用相同值初始化每个实例的内容,它不能依赖于传递给构造函数的任何内容。这就是您需要的
构造函数。只有在那里,您才能声明参数并使用它们引用构造函数参数。我在底部有一个关于trolls的请求。PS:这就是为什么我认为类字段大多是uselessOk,这是一个希望,这是可能的-激发了@CraigO.Curtis的想法,该想法有效,因为react组件有一个超类,其构造函数
接受第一个参数并将其分配给.props
属性。