gpt4 book ai didi

javascript - Karma 中的另一个 'module is not defined'

转载 作者:行者123 更新时间:2023-11-27 23:30:46 24 4
gpt4 key购买 nike

我对 angularjs 还很陌生,我正在尝试使用 Jasmine 和 Karma 测试应用程序。如果我只使用 Jasmine 提供的基本框架(使用 SpecRunner.html),测试工作得很好,但是当我尝试使用 Karma 时,我不断收到相同的“模块未定义”消息。

我在 karma.conf.js 中的文件依赖关系如下:

files: [
'../../js/angular.min.js',
'../../js/angular-sanitize.min.js',
'lib/angular-mocks.js',
'../../js/app.js',
'lib/jasmine-2.4.1/jasmine.js',
'lib/jasmine-2.4.1/jasmine-html.js',
'lib/jasmine-2.4.1/boot.js',
'lib/jquery-1.11.3.min.js',
'spec/spec.js'
]

到目前为止,这看起来与我在 SO 上看到的所有以前的 karma 未定义模块问题一模一样,除了我很确定包含 angular-mocks.js,文件位置是正确的,并且我没有使用任何其他可能覆盖 karma.conf.js 的框架。我很抱歉再次问同样的问题,但是我在这里错过了一些非常明显的东西吗?

最佳答案

我过去在 Karma 方面也遇到过类似的问题。您放置依赖项的顺序很挑剔。例如,如果您使用 JQuery 和 Angular,那么 Karma 会先使用 JQuery,然后再使用 Angular。我看到您将 Angular 放在其所有子模块之前,这很棒。

我会按以下顺序放置依赖项:

files: [
'lib/jquery-1.11.3.min.js',
'../../js/angular.min.js',
'../../js/angular-sanitize.min.js',
'lib/angular-mocks.js',
'lib/jasmine-2.4.1/jasmine.js',
'lib/jasmine-2.4.1/jasmine-html.js',
'lib/jasmine-2.4.1/boot.js',
'../../js/app.js',
'spec/spec.js'
]

我在同一应用程序中使用 Angular 模块的缩小版本和未缩小版本时也遇到了问题。例如,如果您想使用 Angular 的缩小版本,那么请确保它的所有子模块也都缩小了。对于任何 JavaScript 依赖我都会这么说。保持一致。

关于javascript - Karma 中的另一个 'module is not defined',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34598862/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com