Ember.js服务器端或客户端或两者兼而有之?

时间:2017-03-06 21:47:56

标签: javascript node.js ember.js

我和Ember.js有点混淆,我不了解与Ember有关的一些基本概念。 我在官方页面上看到Ember是一个客户端框架。

  

造成这种差异的原因是Ruby on Rails是一个服务器端框架,而Ember是一个客户端框架。

Ember Doc.

但与此同时,我知道Ember在Node.js下运行,这是一个服务器端框架。

使用Ember我也可以构建用户界面的视图和组件。

所以,我很困惑,Ember是服务器端框架,客户端框架还是两者兼而有之?

感谢。

2 个答案:

答案 0 :(得分:4)

服务器端呈现服务器端框架不同。

我们通常在服务器端框架中

  • 数据源访问(数据库访问)
  • 交易管理
  • 安全管理
  • 预定任务

我们通常在客户端框架

  • 显示数据
  • 处理用户输入

因此, Ember.js 是客户端框架。

当然,您可以从ember.js访问数据源(例如pouchdb),或者您需要在客户端实施安全策略。但事实并非如此,安全性的核心实现必须在服务器端完成。

Ember.js有两个关于呈现UI 的选项:

  • 客户端呈现:呈现位于用户的浏览器中。
  • 服务器端呈现:呈现放置在服务器中,而不是将结果发送到客户端的浏览器。 (通过fastboot)

答案 1 :(得分:2)

Ember是客户端框架,主要用于为Web平台编写Single Page Applications

Ember使用Node作为工具,使用NPM和一个名为Ember-CLI的CLI工具来改善开发过程和开发人员的工作效率。这个工具包括构建应用程序脚本,安装依赖项,组合资源,使用实时重新加载开发服务器等等。也就是说,你可以在不使用Node的情况下构建Ember应用程序,这只是你需要做的更多工作。你自己的。

Ember还支持通过Fastboot在服务器上呈现其视图。