gpt4 book ai didi

node.js - 在 Windows 上使用 karma-browserify 时出现“找不到模块”错误

转载 作者:搜寻专家 更新时间:2023-10-31 22:32:58 26 4
gpt4 key购买 nike

我正在尝试使用 Karma、Karma-Jasmine 和 Karma-Browserify 在 Angular/Browserify 项目上设置单元测试。我在Windows机器上,供引用。 karma-cli 在我的全局 npm 路径上,karmakarma-jasminekarma-browserifybrowserify都是本地npm安装,使用-D

我正在尝试拉入单个规范文件,如下所示:

var PhoneListCtrl = require('../../../public/js/app/controllers/phone-list');

describe('PhoneListCtrl', function() {
var scope,
ctrl;

beforeEach(function() {
scope = {};
ctrl = new PhoneListCtrl(scope);
});

it('should create "phones" model with 3 phones', function() {
expect(scope).not.toBe(undefined);
});
});

我每次都会收到以下错误:

Uncaught Error: Cannot find module 'Cc/gGH'

在克隆以下存储库、安装 karma 和所有插件并尝试运行他们的示例测试套件后,我得到了完全相同的错误:

https://github.com/xdissent/karma-browserify
https://github.com/waye929/angular-browserify

我究竟做错了什么?正确找到了测试规范模块, karma 似乎找到了所有必要的插件/预处理器,但似乎 karma-browserify 每次都在规范中的 require 语句上绊倒,原因我不能揣测。

我已经多次卸载并重新安装 karma 和所有相关插件,但无济于事。

最佳答案

我设法找到了解决方案。该问题是由 karma-browserify 自己的模块名称散列函数引起的,该函数与较新版本的 browserify 不兼容。有一个分支使用 browserify 的散列函数来处理它:

https://github.com/voidlock/karma-browserify/commit/3afe3b7485f2e4723bba5ad1c5a730d560b8c234

有一个 pull request 待处理,但与此同时您可以通过放置来使用 fork

“karma-browserify”:“https://github.com/voidlock/karma-browserify/tarball/use-browserify-hash-function”

在您的 package.json (dev)dependencies 部分。

关于node.js - 在 Windows 上使用 karma-browserify 时出现“找不到模块”错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22641136/

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