【问题标题】:Ember.js server side or client side or both?Ember.js 服务器端或客户端或两者兼而有之?
【发布时间】:2017-03-06 21:47:55
【问题描述】:

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

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

Ember Doc.

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

同样,使用 Ember,我可以为用户界面构建视图和组件。

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

谢谢。

【问题讨论】:

    标签: javascript node.js ember.js


    【解决方案1】:

    服务器端渲染不同于服务器端框架

    我们通常在服务器端框架中拥有什么:

    • 数据源访问(数据库访问)
    • 事务管理
    • 安全管理
    • 计划任务

    我们通常在客户端框架中拥有什么:

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

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

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

    Ember.js 有两个关于渲染 UI 的选项:

    • 客户端渲染:渲染放置在用户的浏览器中。
    • 服务器端渲染:渲染放置在服务器中,然后将结果发送到客户端的浏览器。 (通过快速启动)

    【讨论】:

      【解决方案2】:

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

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

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

      【讨论】:

      • 如何在不需要 Ember 服务器(节点)的情况下构建 Ember 应用程序?一个例子或参考会很有帮助。
      猜你喜欢
      • 2014-04-13
      • 2011-02-25
      • 2013-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多