哪个 Javascript MVC 框架在路由、模型、视图和控制器的概念方面与 Asp.net MVC 最接近?
我使用优秀的Sammy.js和Mustache.js完成了一个个人项目,并且对 Sammy 感到满意,因为它与Nancy the Micro .net 框架相似。
我想将此项目转换为另一个 Javascript MVC 框架,以便比较优缺点,我想选择一个类似于 Asp.net MVC 的框架,但我面临选择悖论。
哪个 Javascript MVC 框架在路由、模型、视图和控制器的概念方面与 Asp.net MVC 最接近?
我使用优秀的Sammy.js和Mustache.js完成了一个个人项目,并且对 Sammy 感到满意,因为它与Nancy the Micro .net 框架相似。
我想将此项目转换为另一个 Javascript MVC 框架,以便比较优缺点,我想选择一个类似于 Asp.net MVC 的框架,但我面临选择悖论。
在过去几年中,发布的此类 MV* 框架的数量出现了巨大的增长。
Backbone.js , Ember.js , AngularJS , Spine , CanJS ...</p>
新的稳定解决方案列表每周都在不断增加,开发人员很快就会发现自己迷失在众多选择中。
为了帮助解决这个问题,我们创建了TodoMVC——一个提供在当今大多数流行的 JavaScript MV* 框架中实现的相同 Todo 应用程序的项目 ——将其视为框架的快速约会。
解决方案的外观和感觉都相同,具有共同的功能集,并且使我们可以轻松比较不同框架的语法和结构,因此我们可以选择我们觉得最舒服的一个,或者至少缩小我们的选择范围。
JavaScript MVC 丛林之旅是您的必读之作。
另请访问TodoMvc - 它会帮助您选择 MV* 框架。
希望这可以帮助 :)
这不是一个完整的答案 - 因为有很多我没有亲自使用过的框架 - 但我只是想分享我的经验和个人观察,因为我也来自 ASP.NET MVC 并使用了以下几个 JS 框架:
总的来说,我发现它们与 ASP.NET 尤其是控制器不同,总体趋势似乎是 JS 框架中的模型更智能,它们往往是 ASP.NET 术语中的控制器+模型。另一个区别可能是与 ASP.NET MVC 不同,总是有很多方法可以做同样的事情。与 ASP.NET MVC 不同的是,您通常需要其他部分来补充您的框架选择,例如淘汰赛之上的路由库、具有骨干网的模板引擎等。最后,它比 ASP.NET 动态得多,有这么多的框架,一直在发展,很难跟上时代或找到确切的信息来源(ps:没有)。
Yasser 的资源非常好,还可以将Addyosmani博客添加到您的 RSS 提要中,他知道他的框架。Yasser 指出的 ToDoMVC 是一个很好的资源,可以让您快速了解所有选项以及如何在不同框架中完成工作。这是一个很好的起点,但这只是一个起点,您需要亲自动手才能学习任何有用的东西。
所以我使用了 Backbone 和 Knockout。
Backbone是 MVC,但骨干中的 C 是集合而不是控制器,它提供路由、下划线模板引擎(但您可以将其更改为您想要的任何内容)并且非常适合与 RESTful apis 同步。它还使用下划线库,即使您认为 Backbone 不适合您,它本身也是一个很好的库。模型 - 在主干中 - 是应用程序的核心,它们是 ASP.NET MVC 术语中的控制器+模型。
模型是任何 JavaScript 应用程序的核心,包含交互式数据以及围绕它的大部分逻辑:转换、验证、计算属性和访问控制。
Knockout是 MVVM 而不是 MVC,但仍然值得尝试学习练习,它只做模型绑定,没有路由,但它做得非常优雅。
只需选择一个框架来尝试下一步,这是最后的学习练习。我会选择 Backbone只是因为它很受欢迎,然后如果我有时间尝试其他每个框架。我敢打赌,这将是一个非常令人兴奋的练习。