Knockout、pagerjs、および history.js を使用して SPA をセットアップしようとしています。ただし、 を含むリンクをクリックするとdata-bind="'page-href': '/somepath'"
、JS エラーが発生します。
オブジェクト関数 History() { [ネイティブ コード] } にはメソッド 'pushState' がありません
これは、私が pagerjs を正しく初期化していないことを示していますが、デモを正しくフォローしていると思いました。pagerjs を初期化する方法は次のとおりです。
define(['knockout', 'pager', 'history'], function (ko, pager, history) {
// [define my view model]
pager.useHTML5history = true;
pager.Href5.history = history;
pager.extendWithPage(viewModel);
// [apply bindings]
pager.start();
});
history.js を AMD モジュールとしてロードできるようにするために、history.js の最後にこれを追加しました。
// [original history.js code]
define(function() { return History; });
ただし、pagerjs が呼び出そうとHistory
するメソッドがないことに気付きました。pushState
pagerjs と history.js を統合する正しい方法は何ですか?