【问题标题】:Best way to separate data from DOM将数据与 DOM 分离的最佳方法
【发布时间】:2011-08-30 18:39:29
【问题描述】:

我正在使用这个名为Task Ranger 的时间跟踪/任务管理工具。基本上,您创建一个任务和子任务树,单击您当前正在处理的任何任务,然后跟踪您执行该任务的时间。

我想添加一个功能,让用户可以查看他们在特定日期范围内的时间(即“我上周把时间花在什么上了?”)我想我想要一个标签可以点击从“主”视图跳转到“历史”视图。

问题在于,现在我通过简单地将所有内容存储在 DOM 中并将整个 html 结构转储到 localStorage 中来持久化我的数据。为了让历史视图工作,我需要将数据与 html 分开,对吗?我想 MVC 框架是这样做的典型方式,对吧?我在看Backbone,但我觉得这可能有点矫枉过正。我在想也许我应该推出自己的简单小东西。你怎么看?

我现在正在使用 Javascript + Jquery 来解决所有这些问题。

【问题讨论】:

    标签: javascript jquery model-view-controller architecture


    【解决方案1】:

    Backbone 与 MVC 一样轻量级。如果我要编写自己的微型 MVC 框架,它会在一周内转换为主干。

    我强烈推荐 Backbone,而不是自己编写,因为它结构良好且松耦合。您只能使用您想要的主干功能。由于您已经包含 jQuery,因此包含骨干网的开销也很小。

    Backbone 非常适合构建和组织代码。

    您可以使用backbone-localstorage 适配器将模型保存到localStorage。

    然后,您可以保存所有模型的积压或从 RESTful 服务器获取它们以供您查看历史记录。

    backbone 的可靠替代品是spine,它也是一个轻量级 MVC 库。 Spine有更传统的MVC态度,只有2kB

    【讨论】:

      猜你喜欢
      • 2019-10-27
      • 2021-07-14
      • 2015-05-13
      • 1970-01-01
      • 2014-01-08
      • 2012-09-01
      • 2014-06-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多