为什么我们需要骨干js或任何JS MVC框架?

时间:2012-12-12 11:08:35

标签: javascript model-view-controller backbone.js frameworks backend

如果我们已经在使用后端MVC框架(例如Django或ROR),为什么我们需要使用JS MVC框架(骨干)。我无法理解两个MVC框架的概念以及它们如何组合在一起。我认为所有前端相关文件或逻辑(html,css,js)都属于后端框架的views组件。有人可以用更简单的术语解释这个吗?

4 个答案:

答案 0 :(得分:9)

Backbone位于客户端[浏览器]中,以便获得快速的交互和体验。 这样,您就可以通过websocketsLocalStorage进行实时通信。

使用客户端MVC [在Backbone的情况下更好地使用MVVM]意味着您只需从服务器[可以在许多其他上下文中重用]提供RESTful资源集,而不是完整的HTML生成堆栈。

说,客户端MVC更接近面向桌面/移动UI的MVC实现[参见Cocoa / iOS]而不是面向Web的MVC [Symfony,Django,RoR ...]。

答案 1 :(得分:1)

这主要是因为可扩展性,每个MV *框架都允许您制作模块化代码。为了通过使用网站为用户提供高级体验,JS代码和一些烟花是必要的。 JavaScript还提供了从后端方面免于不必要的计算的可能性,并且由于这些简单的事实和当前制作的网站的规模(在后端和前端方面的大量模块),这样的MV * JavaScripts框架被制作并变得越来越受欢迎

答案 2 :(得分:0)

您可能需要查看此帖子Why use MVVM?

我一直在使用MVVM,并发现它对前端非常有用。渲染更加快速和平滑,并且在客户端完成视图模型绑定。

答案 3 :(得分:0)

似乎这些JavaScript MVC框架开始弹出的原因之一是努力为客户端JavaScript代码带来一些结构。近年来,JavaScript在Web应用程序中的使用越来越多,因为它增强了客户端的体验,但是当你不断添加更多时,它很快就会变成一堆乱七八糟的意大利面条代码。如果您曾经继承过拥有大量JavaScript的Web应用程序,那么您可能需要花费很长时间来对所有回调,函数,DOM操作等进行排序,以便了解如何应用app和捆绑在一起。它可能非常混乱。这些JavaScript MVC框架有助于组织和引入所有这些代码的结构,因此它不会失控。