我正在做一个网站,在那里你有一个非常细的垂直条,一直到左边,上面都有主菜单。这是您在网站上拥有的唯一内容。然后,当您单击某个菜单项时,主菜单栏的右侧会弹出另一个栏。这是子菜单。然后,您可以单击子菜单,最后一个菜单出现。当您单击此菜单上的项目时,在最后一个菜单的右侧会出现一个包含页面内容的大框。此框通常包含图片库或视频列表(就像搜索YouTube时一样)。
但是,我希望它具有很好的响应性,所以我需要在localStorage中缓存菜单。所以我想使用一种MVC模式。我尝试使用Spine.js,将菜单加载到一个模型MenuModel中。现在,我不想一次加载所有1000个可用的菜单对象,所以我需要一种方法来预加载我需要的那些对象。
在我看来,Spine.js不是一个很好的选择。我是不是做错了什么,或者Spine.js不是为加载菜单而设计的,就像我这里做的那样?我的意思是,客户端从来没有添加过任何记录,无论是修改还是删除。仅从服务器获取并存储在模型中。Spine.js是不是比我需要的更适合你主动更改记录和与服务器同步的应用程序?
只写我自己的类是不是更好?
发布于 2013-02-05 20:30:53
对Spine.js不太确定,但你可以通过创建一个模型Menu来做一些类似于Backbone的事情。
每个菜单都有对父菜单的引用(除了位于顶部的菜单)。
无论何时获取菜单项,都将它们存储在本地存储中。
每当用户单击菜单项时,您首先检查它是否存储在本地存储中。如果是,则从本地存储中显示它们,否则从服务器获取它们。
这意味着你必须想出一个策略来找出何时更新你的本地存储。
https://stackoverflow.com/questions/14706527
复制相似问题