Jest:TypeError:无法读取未定义

时间:2018-05-19 16:13:52

标签: reactjs unit-testing typescript ecmascript-6 jest

我试图测试我的React类,它有import dotnetify from "dotnetify";导入。这样做很好,但是Jest说,这个点不明确。如果我改为import dotnetify = require("dotnetify");,Jest会通过测试,但这是一个愚蠢的解决方法。如何解释Jest,那个dotntify并不是未定义的?

比你提前。

1 个答案:

答案 0 :(得分:4)

这不能解释'对于Jest来说,它确实是未定义的。

有几种方法可以在TypeScript中处理CommonJS模块。如this answer中所述,只有在使用esModuleInteropallowSyntheticDefaultImports)编译器选项启用了合成导入时,CommonJS packge才会有默认导入。

否则应该像:

import * as dotnetify from "dotnetify";

或者:

import dotnetify = require("dotnetify")