rails ember-cli 没有路由匹配 [GET] > "/javascripts/emberFrontend/vendor.js"

rails ember-cli No route matches [GET] > "/javascripts/emberFrontend/vendor.js"

我是 Ember 的新手,我正在尝试了解资产构建的工作原理。 我有一个现有的 Rails 项目正在转换为 Ember,使用 ember-cli。

ember 1.13 ruby2.1.6 rails4.1.6

我在尝试访问 ember 页面时不断收到这些错误,我试图找出错误的发生时间和原因:

Started GET "/javascripts/emberFrontend/vendor.js" for 127.0.0.1 at 2015-12-28 17:10:16 +0200

ActionController::RoutingError (No route matches [GET] "/javascripts/emberFrontend/vendor.js"): ...

Started GET "/javascripts/emberFrontend/ember-frontend.js" for 127.0.0.1 at 2015-12-28 17:10:16 +0200

ActionController::RoutingError (No route matches [GET] "/javascripts/emberFrontend/ember-frontend.js"):

例如,我获取一个呈现良好的页面并记录:

Started GET "/assets/emberFrontend/vendor-b0892280be71c70102741f9d7feb0532.js" for 127.0.0.1 at 2015-12-28 17:53:15 +0200

Started GET "/assets/emberFrontend/ember-frontend-affc24729a1c2e1a0a6a56334d2bb16a.js" for 127.0.0.1 at 2015-12-28 17:53:15 +0200

然后我对模板代码进行了更改:

<li class="reportsTab"><a href={{urls.reports}}>Reporting</a></li>

至:

<li>{{#link-to "merchant.reports"}}Reporting{{/link-to}}</li>

为了使页面选项卡之一指向 ember 代码而不是旧代码,类似于对该页面所做的其他更改。此更改导致出现上述错误,浏览器页面为空白。

令我困惑的是,如果我在 rails 服务器处于 运行 时恢复更改,然后重新启动它 - 它不会坚持,但如果我停止服务器,那么进行更改并重新运行它,它确实如此。 显然,我在理解 ember 服务器如何构建资产时遗漏了一些东西,但我无法从任何指南中弄清楚。

另外(可能相关),我的 */emberFrontend/tmp 目录不干净。

原来我的机器很慢。 我将 /config/initializers/ember.rb 中的超时更改为 60

c.app :emberFrontend, path: Rails.root.join('emberFrontend').to_s, build_timeout: 60