这可能是我们Webpack配置所特有的,其中使用awesome-typescript-loader
和babel-loader
来支持混合的typescript / javascript react项目。但是我不认为我们在做 也不寻常,我也不知道为什么会这样。
无论如何,会发生什么:
我们有一个反应部分A.jsx
。我将其转换为A.tsx
(打字稿)。单元测试中断。此单元测试取决于从实用程序文件blarg()
导入的实用程序功能B.js
。在单元测试中,在beforeEach()块(jest
/ jsdom
环境)中,我们覆盖函数blarg()
以返回我们选择的值,以查看react组件是否表现出一定的行为。办法。当react组件是javascript时,该函数成功重写。当我将文件更改为打字稿(没有其他内容)时,覆盖不再起作用,我们必须使用另一种技术。为什么会这样?