私はノックアウト プロジェクトでテンプレート システムをセットアップしています。目標はいつでも関数 loadTemplate("templateName") を呼び出して、新しいテンプレートをビューにロードできるようにすることです。
loadHomeTemplate()
orを呼び出すことができるバージョンが動作しており、動作しloadSearchTemplate()
ます。
loadTemplate("Home")
しかし、今はorを呼び出せるように変更しようとしていますloadTemplate("Search")
。
何らかの理由で 2 番目のバージョンが壊れthis.name = ko.observable(name);
ます。this.name は未定義です - エラーを確認するためにコンソール ログを追加しました。理解できません。どちらの場合も、buildTemplate の「name」パラメーターに同じものを渡しているようです。いいえ?
いくつかのメモ:複数のビュー モデルを実行しているため、そのように 'template-content' 要素にバインドしています。メソッドをいつでも実行できるようにする必要があるため、loadTemplate
orをグローバルとして宣言しています。loadHomeTemplate
もっといい方法があるのかもしれませんが、まだ思いつきません。