Durandal Web サイトのMaster Detail サンプルではproject.activate
、ドロップダウン リストでプロジェクトを変更するたびに関数が 2 回呼び出されます。
最初のアクティベーションは のwrite
メソッドで呼び出されActivator
ます。2 番目のアクティベーションは で呼び出されcomposition.bindAndShow
ます。
私が正しければ、明らかな修正はindex.html
これを(で)置き換えることです
<!--ko compose: activeProject--><!--/ko-->
これとともに
<!--ko compose: { model: activeProject, activate: false }--><!--/ko-->
ただし、Durandalのドキュメントには、コンポジションの使用 > 追加設定 > アクティブ化で次のように記載されています。
注: アクティベーターを使用している場合、アクティベーターはアクティベーション コールを制御するため、compose バインディングを介して操作しようとしないでください。
だから私はそれをすべきではありません。これを修正する適切な方法は何ですか?