Karma 测试错误 "unable to init ocLazyLoad"

Karma tests error "unable to init ocLazyLoad"

从快速入门 sb-admin-angular 开始,我正在尝试 运行 测试,但出现错误 unable to init ocLazyLoad。 (这是一台 Windows7 机器。)

我用来 运行 测试的命令是:

$ grunt test --force

我从 了解到,我必须确保在 karma.conf.js 中添加了 ocLazyLoad 脚本的路径。

files: [
  'bower_components/angular/angular.js',
  'bower_components/angular-mocks/angular-mocks.js',
  ...
  'bower_components/oclazyload/dist/ocLazyLoad.min.js',
  'app/scripts/**/*.js',
  'test/mock/**/*.js',
  'test/spec/**/*.js'
],

我也尝试过使用 Bower 重新安装 ocLacyLoad,正如上述线程中所建议的那样。我可以选择版本并选择第一个选项:

Unable to find a suitable version for oclazyload, please choose one:
    1) oclazyload#~0.5.2 which resolved to 0.5.2 and is required by sb-admin
    2) oclazyload#^1.0.9 which resolved to 1.0.9

请问我遗漏或损坏了哪一步?

看来您遇到的是这样的情况:

这应该在 ocLazyLoad 0.6.0 中修复。

我会将 bower.json 文件中的 oclazyload 更新为 0.6.0 或更高版本。一些0.5.x版本引入了这个bug,在0.6.0版本上解决了。

示例的 bower.json 值的当前值也是您使用的 0.5.2。

参考文献:

[1] https://github.com/ocombe/ocLazyLoad/issues/122问题在 GitHub