ウィジェットを機能で装飾する必要がある場合 (いくつかの異なるウィジェットで必要になる場合があります)、私は mixin アプローチに移行しています。
たとえば、ウィジェットのカスタム ライブラリの場合、いくつかの mixin が次のようになっていることがわかります。多くの異なるウィジェットにまたがるドメイン固有の状況のために特定の css クラスを追加するなど)
ウィジェットに mixin を平手打ちするだけのアイデアが好きです。これは、mixin を実行しているウィジェットのウィジェット ライフサイクルに従って関数とプロパティを追加するだけのように思えます。
いくつかの質問: - この mixin のアイデアを使いすぎていませんか? - ミックスインが同じウィジェットに複数回適用されるのをどのように防止しますか (拡張しているモジュールに既にミックスインがある場合など)。- mixin は状態を保持する必要がありますか? - mixin の機能をどのように公開する必要がありますか? ウィジェットがオーバーライドする必要がある機能を提供することによって? それともよりパブ/サブのアプローチですか?
Dojo mixin に関する一般的なアドバイスを本当に探しています。