私はKOアプリを持っており、それぞれのページには、そのページで必要なすべてのアクション(ロード、追加、編集、削除など)を処理する別々のビューモデルがあります。私はRequireJSを使用してコードを複数のモジュールに分割することができましたが、Sammyを使用して複数のビューモデルを同時に使用する方法を見つけることはできません。各ページのノックアウト、必須、サミー、ビューモデル - どのように動作させるのですか?
これは、現在のinit.js
ファイルにある設定で、最初のページにコンテンツが読み込まれます。それは動作します:
require(['jquery', 'ko', 'sammy', 'viewmodels/page1'], function($, ko, sammy, page1) {
var page1VM = new page1.ViewModel();
ko.applyBindings(page1VM);
var app = sammy('#wrapper', function() {
this.get('#page1', function() {
page1VM.loadContent();
});
this.get('#page2', function() {
// do nothing yet
});
[...]
this.get('#pageX', function() {
// do nothing yet
});
});
app.run('#page1');
});
他のビューモデルを他のページにバインドするにはどうすればよいですか?
this.get
の各ページに別々のko.applyBindings
を追加しようとしましたが、これらのバインディングがすでに適用されているページに戻ったときにエラーが発生しました。
Durandalは、基本的にこれらのすべてを一緒にバンドルするフレームワークです。 – Tyrsius