【问题标题】:SPA: Can I use both Angular.js and Ember.js?SPA:我可以同时使用 Angular.js 和 Ember.js 吗?
【发布时间】:2014-07-16 14:27:31
【问题描述】:

我对使用包罗万象的应用程序框架来构建我的 SPA 非常谨慎。我已经阅读了很多关于这个主题的文章,但是我还没有找到任何关于这些框架是否可组合的文章。我有一个长期的架构信念,即框架不应该尝试做太多事情,而是应该:

  1. 只做一件事
  2. 做得很好
  3. 轻松与其他框架组合

话虽如此,我试图跳出“我应该使用 Angular、Ember 还是 Backbone”的框框思考,并询问是否有一种方法可以使用多个。例如,是否可以使用 Angular 的模板(我听说这很棒)但也使用 Ember 的路由(据说很摇滚)?

我的目标是让“最重要的 SPA 框架决策”变得不那么重要,以便我以后可以更改它。如果我们采用混合方法,它会给我们带来两大好处:

  1. 我们可以单独删除“模板”引擎或“路由”引擎或“任何”引擎,因此不需要重写整个应用程序来更改我们不喜欢的内容
  2. 通过弄清楚如何让它们一起玩得很好,我们将能够切换出单独的路由/控制器/视图,从而允许在小步骤中切换框架/方法

这是一个合理的选择还是充满了烦人的困难?

如果答案是后者,那么这些框架存在根本缺陷,我不会使用它们。

【问题讨论】:

  • 我认为将两者结合起来并不是一个好主意。阅读您可能感兴趣的 Quora 主题:quora.com/Client-side-MVC/…
  • 如果您必须将两者结合起来,通过指定 rootElement 让 Ember 应用程序在其中运行,在 Angular 应用程序中运行 Ember 应用程序可能是最简单的。

标签: angularjs ember.js


【解决方案1】:

Angular 和 Ember 的内部结构是紧密耦合的。您可以仅使用 Ember 或仅使用 Angular 来完成页面的某些部分,但是将路由/模板/数据绑定从一个框架混合到另一个框架将是一项极其困难的任务。

【讨论】:

  • 谢谢。这似乎是构建框架的糟糕方式。我不明白为什么他们在一起玩得不好。 “如果你不能打得很好,那么你根本就不能打”IMO。
  • 设计一个框架并使其对开发人员既友好又超快速是一项艰巨的任务。大多数情况下,这需要利用对相关流程的深入了解。模块化的东西很好,但它并不总是适合最好的产品。
猜你喜欢
  • 2011-07-21
  • 2015-05-19
  • 2019-05-21
  • 2021-09-05
  • 2014-04-08
  • 2020-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多