Ember 预渲染:初始化时超时

Ember pre-render: timed out while initializing

我正在尝试为我的 ember 应用程序创建一个预渲染服务器。

我安装了 ember-prerender (https://github.com/zipfworks/ember-prerender),使用了 /example 中提供的初始化程序,并将其部署在我的一台服务器上。

但是当我尝试启动它时:

Restarting renderer, timed out while initializing

换引擎也是这样(我用Phantom和jsdom试过)

我最好的猜测是 XContentReady 事件从未触发。

所以确实是 XContentReady 没有开火导致了这个问题。 我没有添加触发事件的混合:

mixins/ember-prerender.js:

import Ember from 'ember';

export default Ember.Mixin.create({
  willComplete: function() {
    Ember.RSVP.resolve();
  },
  actions: {
    didTransition: function() {
      this._super();

      var promises = [];
      var currentHandlerInfos = this.router.get('router.currentHandlerInfos');
      for (var i = 0; i < currentHandlerInfos.length; i++) {
        if (currentHandlerInfos[i].handler.willComplete) {
          promises.push(currentHandlerInfos[i].handler.willComplete());
        }
      }

  Ember.RSVP.all(promises).then(window.prerenderReady); //<-- FIRERING HERE
}
}
});