我正在开发的项目是使用MVVM作为设计模式开发的单页Web应用程序。
除了对整个页面的第一个请求之外,每个其他事务都是基于JSON的,每个JSON都在演示级别使用Knockout进行绑定。
目前我们正在使用单个Knockout-viewModel开发整个应用程序,每个JSON都在viewModel中解析并绑定到表示级别。
现在,考虑到目前viewModel的大小,我想知道将整个事物拆分为不同(较小)的viewModel是否是一个很好的做法,这些viewModel专门绑定到页面中的单个元素(like it's described in this article) ,大量使用Knockout的映射插件来生成空结构(并刷新数据)。
如果这不是最佳做法,您如何建议管理JSON绑定?目前我们正在使用$.jsonparse()
获取一个对象,然后我们将一些可观察数组中的不同数据推送出去。但我不认为这是解决这个问题的最佳方法。
谢谢。
答案 0 :(得分:3)
我非常喜欢在许多小型模块中散布复杂性,而不是单一的单一模块,而且复杂程度很高。
我倾向于使用多个视图模型,并使用Knockout.Postbox库在它们之间进行通信。