【问题标题】:Which Javascript MV* platform/library should I use for my project? [closed]我的项目应该使用哪个 Javascript MV* 平台/库? [关闭]
【发布时间】:2013-01-28 17:25:15
【问题描述】:

我们将开始开发一个使用以下内容的 Web 应用程序:

  1. Spring MVC 框架
  2. 休眠
  3. MySql 或 MongoDB(或两者兼有)
  4. 将在浏览器上运行的移动应用程序的 HTML5(这将是实际 Web 应用程序的次要部分)

我以前从未使用过任何 javascript MVC/MV* 框架。每当我需要时,我一直在使用普通的 jQuery 和其他库。

网络应用的要求:

  1. 正常登录等
  2. 仪表板将显示分析、图表等。
  3. 表单设计工具 - 例如用户可以在其中输入新行和更改的实时预览的可编辑表单应反映在与其相邻的类似移动设备的屏幕上。看看它在移动视图中的样子。用户可以添加、编辑和删除新行。所以它将是一个交互式表单构建界面。 (这就是我认为 MV* 库/框架可以帮助我的地方。怎么说?或者 jQuery 可以解决问题?)

HTML5 移动应用的要求:

  1. 用户将从浏览器访问应用程序。
  2. 它应该看起来像一个原生应用程序(但实际上它将是一个 HTML5 应用程序)
  3. 它最多有 2-3 页(带有 NEXT 按钮)和用于输入的简单文本区域(例如电子邮件、电话号码等)和 SUBMIT 按钮。 (使用 jQuery mobile 会是最好的解决方案吗?或者我应该使用 MV* 库或任何与 HTML5 很好融合的东西,这将使我的生活更轻松。使用什么?)

我对 Backbone.js、Ember.js、KnockoutJS、AngularJS 等一系列框架和库感到有些困惑

有人可以指导我吗?我将非常感激和感激。我并不期待最好的框架,我只需要针对上述情况的“最佳”框架。 :)

【问题讨论】:

    标签: html jquery-mobile backbone.js knockout.js angularjs


    【解决方案1】:

    半年前,我坐在你的鞋子里。我一直在使用相同的堆栈,具有相同的设计原则。我和AngularJs 一起去了,再高兴不过了:)。

    我一直在评估这组框架:

    • 淘汰赛JS
    • 主干 JS
    • 发布订阅
    • 蝙蝠侠 JS
    • 萨米 JS
    • 芽核
    • JS MVC
    • Angular JS

    我正在评估这些条件:

    • 多个型号? (我们可以有几个单独的控制器来处理小块 DOM 分别在同一页面上顺利运行吗)
    • UI 和数据绑定? (UI 的变化反映在对象状态中,反之亦然)
    • 自动内容切换? (当您导航到 #dashboard#posts 框架支持的内容更改 id 时)
    • 模板? (无需使用 3rd 方库进行模板)
    • 与不同框架的集成? (如 jQuery)
    • 支持 HTML 5 本地存储? (是否支持本地存储或是否已将其集成到框架中)
    • 单元测试支持(框架的性质是否使测试变得容易)

    我列表中的大多数框架都支持或满足所有这些条件。这让我感到惊讶,因为我希望一个人能证明比另一个人更好。 事实证明,它们都非常接近,所以在我的情况下,唯一的方法就是一个一个地尝试它们。在我学习了几个教程之后,我决定使用 AngularJs,这是我做过的最好的决定:-)

    说实话,几乎所有的框架都会帮助你。对您来说最重要的可能是视图和模型的声明式绑定。您选择的大多数框架都会支持它。

    我建议您采用与我相同的方法。用其中的 3 个编写简单的应用程序,看看最适合你的编码风格的东西。

    【讨论】:

    • 非常感谢您的详细推荐。即使要从该列表中列出 3 个,我也需要帮助。那么我应该尝试 Angular、Backbone、Knockout 和 Ember 吗?你有什么建议?
    • 我会忘记 Ember,因为 Angular 有更好的模板系统。选择 Angular、Backbone 和 Knockout - 尝试一下,看看哪个最适合 :)
    • 我们也选择了 AngularJS,选择我们的原因是 1) AngularJS 不会强制你的模型继承一些 Angular 对象,比如 Ember 或 Knockout,以及 2) 指令非常强大。
    • @AndersEkdahl,+1 指令。我爱他们的点点滴滴。
    • 这是一个适配器,您可以使用它使 Angular 与 JQM 配合得很好:github.com/tigbro/jquery-mobile-angular-adapter。 jQuery Mobile 和 AngularJS 解决了完全不同的问题,因此将 JQM 与 Twitter Bootstrap 进行比较更容易。 JQM 和 Bootstrap 专注于 GUI 组件,而 Angular 是一个应用程序框架。
    猜你喜欢
    • 1970-01-01
    • 2010-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-15
    • 1970-01-01
    • 1970-01-01
    • 2010-09-09
    相关资源
    最近更新 更多