问题可能原因
1.没安装ts-node
原因:
ts-node是一个能直接运行 TS 代码的工具(无需先编译成 JS),Code Runner 依赖它来执行 TS 文件
解决办法:
全局安装ts-node(运行TS的核心工具)和typescript(TS编译器)
# npm install -g ts-node typescript
2.vscode settings.json文件配置出错
解决办法:
重新配置。点击设置,搜素“code-runner.executorMap”进入配置,将“typescript”一行配置如下:
"typescript": "ts-node $fullFileName",
3.项目中缺少tsconfig.json文件
原因:
因为新版 Node.js(v20+)默认启用了 ES 模块模式,而ts-node在这种模式下需要额外配置才能识别.ts 文件。Node.js v20 及以上版本对 ES 模块(ESM)和 CommonJS 模块的处理更严格,直接用ts-node运行.ts 文件时,Node.js 无法识别.ts 扩展名,导致ts-node无法正常编译执行 TS 代码。
解决办法:
在项目中新建tsconfig.json文件,添加如下代码:
{
"compilerOptions": {
"module": "CommonJS", // 核心:指定为CommonJS模块,兼容ts-node
"target": "ES6",
"strict": false,
"esModuleInterop": true
},
"ts-node": {
"esm": false // 禁用ESM模式,使用CommonJS
}
}