コンポーネントのストレージ エラーのデバッグに多くの時間を費やしました。そのコンポーネントには無効化/有効化されたボタンがありますが、その効果は見られませんでした。しばらくすると、最後に作成したコンポーネント インスタンスのボタンが変更されていることに気付きました。宣言は次のようになります。
constructor: function(options) {
for(var i in options){
this[i] = options[i];
}
},
domNode: null,
grid: null,
data: [],
buttons: {},
デバッグで、オブジェクトの 2 番目のインスタンスを作成すると、次のことがわかりました。
new CustomComponent({domNode: dojo.byId('secondid')})
ボタンはすでに設定されています - それらのインスタンスはすべてのインスタンスによって共有されています!
最終的に、コンポーネントに静的変数を作成しました。これは私が欲しかったものではありません!その宣言の何が間違っていますか?コンポーネントインスタンスごとに「ボタン」インスタンスを個別に作成するにはどうすればよいですか?