Backbone.js或Spine.js仅适用于“;脱机”;您可以在客户端主动更改记录的应用程序
Is Backbone.js or Spine.js only for "offline" apps where you actively change records client side?
我正在制作一个网站,在这个网站的左边有一个很细的垂直条,上面有主菜单。这是网站上唯一的内容。然后,当您单击某个菜单项时,主菜单栏右侧会弹出另一个栏。这是子菜单。然后,您可以单击子菜单,最后一个菜单就会出现。当您单击此菜单上的某个项目时,您会在最后一个菜单的右侧看到一个包含页面内容的大框。此框通常包含图片库或视频列表(如搜索YouTube时)。
但是,我希望它的响应速度非常快,所以我需要在localStorage中缓存菜单。所以我想使用一种MVC模式。尝试使用Spine.js,我将菜单加载到一个模型MenuModel中。现在,我不想一次加载所有1000个可用的菜单对象,所以我需要一种方法来预加载我需要的对象。
在我看来,Spine.js不太适合。我是不是做错了什么,或者Spine.js不是像我在这里那样为加载菜单等而设计的?我的意思是,没有任何记录被添加到客户端,也没有被修改或删除。仅从服务器获取并存储在模型中。Spine.js是否更适合那些你主动更改记录并与服务器同步的应用程序,而不是我所需要的?
写自己的课是个更好的主意吗?
不确定Spine.js,但您可以通过创建模型Menu
来完成类似于Backbone的操作。
每个菜单都引用了父菜单(除了顶部的菜单)。
无论何时获取菜单项,都会将它们存储在本地存储中。
每当用户点击菜单项时,首先要检查它是否存储在本地存储器中。如果是,则从本地存储中显示它们,否则从服务器中获取它们。
说您必须考虑一个策略来确定何时更新本地存储。
相关文章:
- 使用Twilio JS客户端API时出现JWT令牌过期问题
- 只有在angular js中手动重新加载页面时,signaler-js客户端方法才会调用
- 如何将图像从 JS 客户端库附加到新的 Trello 卡
- 从Node.js客户端使用Aerospike LDT(大型数据类型)的任何方法
- 将 GraphQL 模式从非 JS 服务器公开给 JS 客户端
- 使用 Twilio JS 客户端,如何调用在 texbox 中输入的号码
- 让Pusher JS客户端在PhantomJS中工作
- Node.js客户端和服务器使用Telnet进行游戏
- Meteor JS:客户端没有从Mongo DB获取数据
- SignalR没有't达到JS客户端功能
- 如何将js客户端的图像保存到blobstore
- Strophe.js客户端连接到服务器,断开连接/超时
- Socket.IO Node.JS客户端显示变量
- Node.js客户端会话未创建req.session
- Node.js客户端请求挂起
- Node.js客户端vs.服务器-相同的代码不同的结果
- JSF ajax请求在与JS客户端验证相结合时不会被触发
- 使用angular js客户端对Python服务器进行rest调用的例子
- 预编译模板出现Dust.js客户端渲染问题
- SignalR JS客户端:向invoke方法传递参数