拡張するES6クラスReact.Component
、つまりReactコンポーネントがあります。私のコンポーネントが次のようになっているとしましょう:
class MyComponent extends React.Component {
constructor({ foo, bar, baz, ...props }) {
super({ foo, bar, baz, ...props });
this.state = { foo, bar, baz };
}
render() {
return <span>Foo: {this.state.foo} Bar: {this.state.bar} Baz: {this.state.baz}</span>
}
}
ここでは、コンストラクターのシグネチャで構造破壊を使用して、コンポーネントの状態で使用したい小道具をいくつか引き出しています。これらの値を必ず super に渡します。ただし、実際に同様のコードを実行すると、次のような警告が表示されます。
警告: MyComponent(...): で super() を呼び出すときは
MyComponent
、コンポーネントのコンストラクターが渡されたものと同じ props を渡すようにしてください。
私の質問は、関連する警告なしで示したように、コンストラクターの署名を分解できるかどうかです。(警告には正当な理由があると思いますが、その意味を完全には理解していないことも同様に確信しています。)