我尝试使用以下命令安装chai。
npm install --save-dev chai
字符串
然后,我运行了我的单元测试类,其中包含以下导入。
import {assert} from 'chai';
import {expect} from 'chai';
型
它抛出下面的错误。
test\main\MessageBroker.spec.ts(3,22): error TS2307: Cannot find module 'chai'.
[05:38:45] [Typescript] TypeScript error: test\main\MessageBroker.spec.ts(3,22): error TS2307: Cannot find module 'chai'.
test\main\MessageBroker.spec.ts(4,22): error TS2307: Cannot find module 'chai'.
[05:38:45] [Typescript] TypeScript error: test\main\MessageBroker.spec.ts(4,22): error TS2307: Cannot find module 'chai'
型
我做错什么了?我也可以在node_modules文件夹中看到chai文件夹。
当我说var chai = require('chai');为什么导入不工作?
3条答案
按热度按时间yrdbyhpb1#
我没有安装chai的类型,也就是说我没有从DefinitelyTyped引用chai,而是将其安装为节点模块。因此,我不得不在我的类型脚本代码中使用require语句来调用它。
字符串
e4yzc0pl2#
你可能在幕后使用了类似Babel的东西来转译到ES5。
如果是这样的话,它实际上是在Node上执行
require
,CommonJS风格。如果你只是像CommonJS一样在路径后面加上
./
,你就可以成功了。请给予一下,我希望这能解决你的问题:
字符串
qvk1mo1f3#
这个错误实际上可以通过安装类型来解决。这很奇怪,但它对我很有效。给予看:
字符串