0

タスクを持つ複合ビューがあり、それはコメントです。contentRegion に配置して表示します。モデルを単独でレンダリングする場合、問題なく動作します。しかし、コレクションになると、それは本当に奇妙な振る舞いをします。console.log は、initialize 関数が 2 回トリガーされたことを示しています。最初はビューを定義するときです

taskView = new MyProject.Views.Task
  model : task
  collection : comments

次にMyProject.contentRegion.show(taskView)、モデル ビューをレンダリングするために a を実行します。その後、comments.fetch()すべてのコメントを取得するために電話します。次に問題が発生し、my が再初期化さtaskViewれ、テンプレートは xxx が未定義であると不平を言い続けます。

何かご意見は?私のプロジェクトの別の CompositeView がうまく機能するので、それが奇妙であることはわかっています。

4

1 に答える 1

1

NathanInMac さん、itemView を使用するというあなたの提案から少しテストを行ったところ、興味深いものがいくつか見つかりました。

あなたの問題はネストされたコンポジットビューに関係していましたか? 私もそうでしたが、それが何かに影響するかどうかはわかりません。

問題を解決したのは、最初に itemView を見つけることができなかった collectionView を試していたため、collectionView/compositeView の itemView の定義を collectionView (または拡張) の定義の前に移動しました。

これは有効な修正であり、いくつかの例外またはエラーを表示する代わりに、compositeView の二重初期化に関する誤解を招くバグにすぎないようです。

于 2013-02-25T00:32:12.657 に答える