在这个例子中使用Backbone over jQuery插件的好处

时间:2013-01-15 13:59:10

标签: javascript jquery jquery-ui backbone.js

我希望了解在这种情况下使用Backbone而不是jQuery插件的主要好处:

  • 我的应用程序有5个主要部分供用户导航。
  • 我使用oAuth2.0进行身份验证并访问应用程序(所有部分)。
  • 其中一个部分在屏幕上有4列。每列都是 一个无序的清单。

我想允许用户对这些列表进行过滤和排序。此外,当用户点击列表项时,它将它们带到编辑页面(不同的URL),用户可以在其中编辑该特定列表项的详细信息。我宁愿通过模态或类似的东西来删除加载新页面。

解决方案1 ​​

我在考虑使用jQuery插件(如http://codecanyon.net/item/jquery-jplist-plugin/full_screen_preview/1860318?ref=lvraa)和ajax调用现有代码来对列表中的li元素进行排序和过滤。这样做我可能会保持编辑页面不变或使用模态。

解决方案2

然而,在查看Backbone后,我正在考虑使用它而不是jQuery插件。 Backbone将处理列表的排序和过滤以及列表的编辑。然后,用户可以导航到应用程序的其他部分(在不同的URL),这些部分不会使用Backbone构建。

使用Backbone有什么好处?

我是Backbone的新手,并不确定这对我试图做的事情是否有点过分?另一件令我担忧的事情是编辑其中一个列表元素时的身份验证部分。

2 个答案:

答案 0 :(得分:1)

你必须退后一步,看看更大的图片,看看Backbone带来了什么。 IMO,任何需要使用一组模型或集合的应用程序都可以从使用Backbone中受益。 Backbone是严格的结构,它仍然需要您编写自己的过滤功能。话虽如此,如果你在图片中加入Backbone,建立自己的过滤机制会更容易。 Backbone和另一个jQuery插件可以在同一个应用程序中共存,因为它们所解决的问题是不同的。

jQuery插件只能操作所呈现的数据,但你仍然必须通过AJAX调用来处理这些数据(除非插件为你处理)

最后,你可以侥幸逃脱。答案取决于您希望如何构建应用程序以及您希望对其进行多少控制。

答案 1 :(得分:0)

除非您的应用程序需要MVC或MV *结构,否则您不需要使用BackboneJS。 jQuery插件不一定会被Backbone取代。顺便说一句,Backbone默认使用jQuery进行DOM相关操作。看看你的要求,我会说你可以使用Backbone布局应用程序(我更喜欢AngularJS)并在必要时使用该jQuery插件。只知道jQuery插件无法取代MV *框架的本质。