gpt4 book ai didi

javascript - karma - Jasmine : Error: No provider for framework:jasmine-ajax

转载 作者:行者123 更新时间:2023-12-05 06:44:21 26 4
gpt4 key购买 nike

我正在尝试将 Karma 带到 Jamine 的 ajax.js

https://github.com/IDCubed/karma-jasmine-ajax

我的 karma 配置有:

module.exports = function(config) {
config.set({
...
frameworks: ['jasmine-ajax', 'jasmine'],
});
};

我的 package.json 有:

  "devDependencies": {
"bower": "^1.4.1",
"del": "^1.1.1",
"gulp": "^3.8.11",
"gulp-concat": "^2.5.2",
"gulp-karma": "0.0.4",
"jasmine-ajax": "^3.1.0",
"jasmine-core": "^2.2.0",
"karma": "0.12.31",
"karma-chrome-launcher": "0.1.7",
"karma-cli": "0.0.4",
"karma-jasmine": "0.3.5",
"karma-jasmine-ajax": "^0.1.12",
"karma-junit-reporter": "^0.2.2",
"yargs": "^3.7.1"
}

我的规范是这样的:

  describe("mocking ajax", function() {
describe("suite wide usage", function() {

beforeEach(function() {
jasmine.Ajax.install();
});

afterEach(function() {
jasmine.Ajax.uninstall();
});

it('does something', function() {

});
});
});

但是我有这个错误:

/node_modules/karma/node_modules/di/lib/injector.js:9
throw error('No provider for "' + name + '"!');
^
Error: No provider for "framework:jasmine-ajax"! (Resolving: framework:jasmine-ajax)

我显然缺少一些插件或其他东西......但是什么?

最佳答案

刚刚花了整整 4 个小时来处理同样的问题。这里有几处错误,其核心是:'jasmine'、'jasmine-ajax' 和 'karma-jasmine-ajax' 存在特定版本冲突和要求。

我使用 Jasmine 1.3,当前版本的 karma-jasmine-ajax 依赖于 jasmine-ajax 的版本,它与 Jasmine 1.3 不兼容。 x.

这在 jasmine-ajax 文档中有说明,但在 karma-jasmine-ajax 文档中没有:“如果你Jasmine 1.3.x 需要 jasmine-ajax,请从该标签中获取最新版本。”

为了解决这个特定的冲突,我在我的 package.json 中指定了 "karma-jasmine-ajax": "0.1.3", 并删除了我的依赖在 jasmine-ajax 上(karma-jasmine-ajax 将包含自身)。

最后,jasmine-ajax 的文档对于某些版本的 jasmine-ajax 也是不正确的:一些版本使用 request.RespondWith 而其他版本使用 request.response。我的特定版本组合需要 request.response

希望这对您有所帮助。

关于javascript - karma - Jasmine : Error: No provider for framework:jasmine-ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29673199/

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