我在更新旧的Ember应用时遇到问题。
我已将代码移植到新的空ember应用程序中并安装了依赖项。我在提供应用程序时没有收到任何错误,但是当我检查浏览器控制台时,我发现应用程序无法启动。
Uncaught Error: Could not find module `ember/load-initializers` imported from `<my-app>/app`
我已经看过一篇类似的SO帖子,暗示这是由ember-cli和jquery引起的。 link
然而,这篇文章已经超过一年了,我正在运行一个最新版本的ember以及一个较新的jquery库。当然,这不是保证,但似乎有点不太可能这仍然是ember-cli的问题。
我的app / app.coffee文件很基本(没有添加)
`import Ember from 'ember'`
`import Resolver from 'ember/resolver'`
`import loadInitializers from 'ember/load-initializers'`
`import config from './config/environment'`
Ember.MODEL_FACTORY_INJECTIONS = true
App = Ember.Application.extend
modulePrefix: config.modulePrefix
podModulePrefix: config.podModulePrefix
Resolver: Resolver
loadInitializers(App, config.modulePrefix)
`export default App`
在控制台中,我可以验证我的应用是否正在使用预期的jquery版本:
$ Ember.$.fn.jquery
"3.2.0"
但是,从命令行,我得到一个不同的版本。
$ bower jquery -v
1.8.0
我不确定这是有意义的还是红色的鲱鱼。
无论如何,我的ember-cli是最新的。
ember-cli: 2.12.0
我已添加指向package.json和bower.json文件的链接,以防它们包含任何线索。
此时,我不确定如何解决问题。依赖
答案 0 :(得分:3)
import Resolver from './resolver'
import loadInitializers from 'load-initializers'
更新这些行app.js文件并尝试
答案 1 :(得分:2)
如果您尚未执行此操作,请在app.js
中切换
import loadInitializers from 'ember/load-initializers'
到
import loadInitializers from 'ember-load-initializers'
他们改变了loadInitializers recently的命名惯例。