环境
- node: v16.13.0
- ts-node: 10.4.0
- typescript: 4.5.2
- package.json 中已添加
"type": "module"
- tsconfig.json 中已添加
"module": "ESNext"
- 构建命令为
node --loader ts-node/esm ./src/App.ts
具体情况
- 在项目中引入
import { WebSocket } from 'ws';
会报错,具体信息为: CustomError: Cannot find package 'ws' imported from /*/service/src/App.ts - 引入 node 自带的包,例如
import { EventEmitter } from 'events';
正常
- 在项目中引入
ts-node本身就存在这个问题,详情见如下链接
https://github.com/TypeStrong/ts-node/issues/1514
https://github.com/TypeStrong/ts-node/issues/1381