1

Sencha Architect 2 を使用してアプリケーションを作成しています。データにアクセスできないイベント ハンドラーを作成しているときに、何度か問題に遭遇しました。

具体的には、コンボボックスの最初の項目をプログラムで選択するための AfterRender 関数を作成しようとしています。コンボボックスは、正常に読み込まれる JSON ストアから取り込まれます。ロードされたデータにアクセスできないため、関数に次のコードを使用して、使用可能なデータをログに記録します。

onComboboxAfterRender: function(abstractcomponent, options) {
  // abstractcomponent.value = abstractcomponent.store.data.items[0].date;
  console.log(abstractcomponent);
  console.log(abstractcomponent.store);
  console.log(abstractcomponent.store.data);
  console.log(abstractcomponent.store.data.items);
  console.log(abstractcomponent.store.data.items[0]);
}

以下は、javascript コンソール出力です。

console.log 出力

見られるように、abstractcomponent.store.data記録された 3 番目の項目では、項目が空であることが示されています。しかし掘り下げてみると、items は 3 つのエントリを持つ配列です。

明らかに、私は根本的に間違ったことをしています。After Render ハンドラー内からストア データにアクセスする方法についてアドバイスをいただければ幸いです。また、ExtJS/JavaScript/JavaScript コンソールの根本的な誤解がある場合は、何が起こっているのか理解できないため、アドバイスをいただければ幸いです。

4

1 に答える 1

0

参考です。コンソールに出力したとき、ストアにはまだ値が設定されていませんでした。

ただし、Chrome/Firebug を使用してコンソールを展開すると、コンソールが表示され、入力されます。

于 2013-01-07T21:57:54.407 に答える