小编Tri*_*iti的帖子

开玩笑:从自己的包导入时无法读取未定义的属性

我创建了一个名为 的包@package/test。当导入到新的空 React typescript 应用程序时,效果非常好。问题始于 Jest 测试套件。


commonJS版本导致 Jest 抛出:

Test suite failed to run. TypeError:Cannot read property 'getSelectors' of undefined

import { Test } from `@package/test
const selectors = Test.getSelectors(...); //error here indicating that Test is undefined
Run Code Online (Sandbox Code Playgroud)

当我编译ES modules软件包版本时,它会导致 Jest 抛出

export * from './common';
^^^^^^
SyntaxError: Unexpected token export
Run Code Online (Sandbox Code Playgroud)

src/index.ts这是我的包裹里面的第一行。

我测试过很多解决方案,例如:

  • transformIgnorePatterns为玩笑定义
  • eslint使用插件搜索循环依赖关系Madge
  • 在 Node.js 版本上测试:10.20.0、12.21.0、15.12.0
  • 在打字稿版本上测试:3.7.5、4.1.2

有关该包的一些详细信息

export * from './common';
^^^^^^
SyntaxError: Unexpected token export …
Run Code Online (Sandbox Code Playgroud)

javascript typescript reactjs jestjs

6
推荐指数
1
解决办法
8142
查看次数

标签 统计

javascript ×1

jestjs ×1

reactjs ×1

typescript ×1