2016-08-21 3 views
3

のは、私はこのようなコンポーネントを定義するとしましょうに反応しますこれは可能ですか?もしそうなら、上記のものと比較して実装の相違点を知っている人はいますか?ありがとう!モンキーパッチ適用はコンポーネント

+0

これは「科学のためのもの」ですか、これを行うには適切な理由がありますか? – azium

+1

私は本当にあなたのユースケースを聞いて欲しいです。コンポーネントは、一般的に再利用可能で「ダム」になるように設計されています。コンストラクタをオーバーライドすると、コンポーネントの中に少し入って私の好みに合ったものになります。たぶんあなたは代わりに小道具を渡すことで行動の違いに対処することができますか? –

+0

ユースケースのために来ても、あなたが意図しているものがjsのモンキーパッチクラスに正しく理解されていれば、それは正しいとは言えません – martriay

答えて

1

es6クラスのコンストラクタをオーバーライドすることはできません。あなたはes5クラスでそれを行うことができるので、babelでうまくいく(そして脆くなる)でしょう。他の方法については

あなたは

MyComponent.prototype.methodName = function() {} 

を行うだろうこれは、IMO、それがより良い依存性の注入を可能にするよう欠落している機能です。

もし私がReflect.setConstructorを持っていれば、このページにTC39が載ってしまうはずです。

関連する問題