我正在努力理解如何使用pagerjs和knockout来正确地构建我的应用程序。我希望有单独的视图模型,以包括在每个页面引用。
下面是我的index.html示例中的3个页面:
<div data-bind="page: {
id: 'page_1',
title: 'page 1',
source: 'views/page1.html',
with: page1ViewModel
}">
</div>
<div data-bind="page: {
id: 'page_2',
title:'Page 2',
source: 'views/page2.html',
with: page2ViewModel
}">
</div>
<div data-bind="page: {
id: 'page_3',
title:'Page 3',
source: 'views/page3.html',
with: page3ViewModel
}">
</div>所以我将我的页面html分割到一个视图文件夹中,这样做效果很好。我真正想要理解的是如何将我所有的视图模型存储在单独的文件中,以及它如何与pagerjs一起工作。
如果我只是在“main.js”中使用一个视图模型,它将如下所示:
function viewModel() {
}
var viewModel = new viewModel();
// use #!/ instead of the default #
pager.Href.hash = '#!/';
// extend viewModel with a $__page__ that points to pager.page that points to a new Page
pager.extendWithPage(viewModel);
// apply your bindings
ko.applyBindings(viewModel);
// run this method - listening to hashchange
pager.start();如果您能帮助我们构建视图模型的逻辑分离,我们将不胜感激。
发布于 2014-08-23 21:01:57
完整的示例网站:https://github.com/maxfridbe/WindowKO-TS-JS/tree/master/CleanWeb
基本上是敲击寻呼机和打字机
我用我自己的makepage绑定包装了page: makepage(),它采用了基于声明约定的结构: ie makepage('bob')具有这样的结构
将放置一个!#/bob
/area folder
/views folder
/view models folderhttps://stackoverflow.com/questions/25443487
复制相似问题