javascript
class
ecmascript-6
現在、ES5 では多くの人がフレームワークで次のパターンを使用してクラスとクラス変数を作成しており、これは便利です。 // ES 5
FrameWork.Class({
variable: 'string',
variable2: true,
init: function(){
},
addItem: function(){
}
});
ES6 ではネイティブにクラスを作成できますが、クラス変数を持つオプションはありません。 // ES6
class MyClass {
const MY_CONST = 'string'; // <-- this is not possible in ES6
constructor(){
this.MY_CONST;
}
}
残念ながら、クラスにはメソッドしか含められないため、上記は機能しません。 できることは理解していますが、特に大きなクラスに 20 ~ 30 以上のパラメータがある場合は、コンストラクターを「ジャンク」this.myVar = trueにconstructorしたくありません。 この問題に対処する方法をいろいろ考えていましたが、まだ良い方法が見つかっていません。(たとえば、ハンドラーを作成しClassConfig、parameterクラスとは別に宣言されたオブジェクトを渡します。すると、ハンドラーがクラスにアタッチされます。WeakMaps何らかの方法で統合することも考えていました。) この状況に対処するためにどのようなアイデアをお持ちでしょうか?
Admin