将Ember.js与Node.js(Express + Tower.js)集成

我正在研究将Ember.js与Node.js + Express + Tower.js集成的解决scheme。

我刚刚开始研究Tower.js(最近几个小时),看起来框架提供了一个很好的结构来放置服务器端和客户端代码(类似于Rails中的assets文件夹)。

由于一切都在Javascript中,我可以将Ember应用程序代码:

  1. 完全在客户端,即发送一切请求。
  2. 只服务于最初需要的东西,仅在需要时才提供服务。

在第二个解决scheme中,可以在服务器上呈现视图并发送纯HTML。

那么Ember(控制器,模型,状态,…)的应用程序逻辑呢? 怎样才能更好地与服务器端Javascript(如node.js + Express + Tower.js)集成,以便重复代码被最小化。 在一个理想的情况下,你定义每个模型/控制器/等一次,并在服务器和客户端上使用它。

我们正在将Ember.js整合到Tower.js的核心中,这是从一开始就计划好的。

还不完全。 但接下来就发生了。

Ember目前在Node.js和Browser中工作,Tower也是如此。 服务器上的控制器将像Rails一样使用Web套接字添加。 客户端上的控制器将像在服务器上一样工作像Ember一样支持Web套接字 – 仍然充实了这一点。