【发布时间】:2021-01-18 00:24:25
【问题描述】:
在正常运行项目并在 Jest 中运行时,我无法让我的代码工作。
运行项目需要 dayjs 的这种导入:
import * as dayjs from 'dayjs';
import * as utc from 'dayjs/plugin/utc';
import * as customParseFormat from 'dayjs/plugin/customParseFormat';
npm run dev (nodemon --exec ./node_modules/.bin/ts-node ./src/app.ts):没有问题
开玩笑: TypeError: t is not a function
运行 Jest 测试需要 dayjs 的这种导入:
import dayjs from 'dayjs';
import utc from 'dayjs/plugin/utc';
import customParseFormat from 'dayjs/plugin/customParseFormat';
npm run dev (nodemon --exec ./node_modules/.bin/ts-node ./src/app.ts):
dayjs.extend(utc);
^
TypeError: Cannot read property 'extend' of undefined`
开玩笑:成功了!
所以现在我不可能编写测试。为什么它的转译方式不同?
【问题讨论】:
-
这里的问题在于模块互操作的配置方式(
*和默认导出不匹配)。
标签: import jestjs es6-modules dayjs