1. 首页 > 快讯

Node.js项目中TypeScript文件执行失败:ts-node无法识别.ts文件的原因是什么)

为什么在 nodejs 项目中不能在 typescript 项目 ts-node 执行.ts 文件?

在 typescript 项目中使用 ts-node 执行 .ts 文件时遇到无法识别.ts 文件后缀的错误,该问题可能是由于以下原因造成的:

1. package.json 中 "type": "module" 的作用

在 package.json 中添加 "type": "module" 表示该项目为 es 模块项目,它将使用 es 模块语法而不是 commonjs 模块语法。

2. "type": "module" 对 npmjs.org 发布的影响

如果要将项目发布到 npmjs.org,则需要将 "type": "module" 添加到您的 package.json 中。因为 npmjs.org 已逐步淘汰 commonjs 模块,并且需要所有新发布的包都使用 es 模块语法。

3. "syntaxerror: cannot use import statement outside a module" 错误的解决方案

此错误表明您尝试在文件顶部使用 import 语句,而该文件尚未声明为模块。要解决此错误,您可以在 tsconfig.json 文件中添加以下配置:

{
  "compileroptions": {
    "esmoduleinterop": true,
  }
}
登录后复制

此配置将允许您在非模块文件中使用 import 语句。之后,您还可以使用 ts-node-esm 执行您的脚本,如下所示:

ts-node-esm script.ts
登录后复制

本文采摘于网络,不代表本站立场,转载联系作者并注明出处:https://www.iotsj.com//kuaixun/7578.html

联系我们

在线咨询:点击这里给我发消息

微信号:666666