Closed wiz-Cll closed 10 years ago
我自身也没有遇到这样复杂的需求,自己手动维护一下,或者使用$watch回调向其他VM同步
follow
密切关注。
从我的理解去实现你提到的两点看能否符合你的需求: 1、 notebookVM, notelistVM, noteVM 这三个本身就是有主从关系的,其实看起来就是一个数据结构,只要你的结构足够合理,你可以定义一个vm,不管你如何修改node_title,vm中只有一份而已。这样会带来性能问题,这个你可以考虑根据实际情况优化,比如先定义一个初始化的数据vm,隐藏dom在内存中进行初始化,之后在真正的数据到来时,因为已经初始化过了 会相当的快。 2、其实你这个命题本身就不成立,数据过大你应该考虑分页,至于分页的形式是滚动到底层还是点击分页根据实际表现形式确定。如果按照你说的那种在内存中维护一份数据也是两个命题,首先你应该还是在vm中有自己的分页,其次你内存中的数据也是一个大的独立分页,页面上的分页总是从内存中取,而内存此时向后端取。 3、至于定时后端刷新也是另一个命题,首先你的数据应该是有状态的,必须新增的、修改的、删除的、选中的等等,这样就很容易实现你的需求了。
恭请作者司徒和各位关注MVVM的同学给些建议~ 毕业前实习加毕业后工作有一段时间了,在面对比较大的前端项目的时候还有点发憷:怎么在前端有限的内存和操作时间内( 一刷新就没 )维护好用户的数据,同时做好ui的同步和一致? 这里所说的"较大的前端项目",指的是类似Evernote网页版,或者wunderlist网页版,至少三层的数据结构( 笔记本列表->笔记列表->笔记对象 或者 任务list->任务列表->任务详情) ). 在使用MVVM前一直沉溺在拼接dom的泥沼中,现在有了mvvm之后做数据和ui的同步简单了很多.但是一些新的问题也随之而来:
请问各位同仁有没有更好的设计思路或者实现方法, 告诉小弟一声...