You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NextJS项目中如何在服务端运行Typescript CLI脚本

NextJS + TypeScript 项目运行CLI脚本解决方案

核心说明

不需要修改webpack配置,也不需要修改项目package.json的type字段,CLI脚本独立于NextJS构建流程运行,仅需调整ts-node运行参数即可适配现有配置。


方案一:临时指定编译参数(无需新增配置文件)

  1. 保持src/cli.ts末尾的空导出语句export {},解决--isolatedModules校验报错
  2. 运行脚本时追加compilerOptions参数,强制指定编译为CommonJS模块:
ts-node --compiler-options '{"module": "CommonJS"}' src/cli.ts

如果是Windows环境,引号需要转义:

ts-node --compiler-options "{\"module\": \"CommonJS\"}" src/cli.ts

如果需要频繁运行,可以在package.json的scripts字段中新增快捷命令:

{
  "scripts": {
    "cli": "ts-node --compiler-options '{\"module\": \"CommonJS\"}' src/cli.ts"
  }
}

后续直接执行npm run cli即可运行脚本。


方案二:新增CLI专属TS配置(适合多脚本场景)

如果项目中需要编写多个CLI脚本,可以单独新建CLI配置文件,免去每次传参的麻烦:

  1. 在项目根目录新建tsconfig.cli.json:
{
  "extends": "./tsconfig.json",
  "compilerOptions": {
    "module": "CommonJS",
    "isolatedModules": false
  },
  "include": ["src/**/*.cli.ts", "src/cli/**/*"]
}
  1. 所有CLI脚本可以不用添加空导出语句,运行时指定该配置即可:
ts-node --project tsconfig.cli.json src/cli.ts

内容的提问来源于stack exchange,提问作者Sonson123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 11:48:02