JavaScript版NestJS项目构建报错(缺失tsconfig.json)求助
解决JS版NestJS项目部署Vercel的构建失败问题
问题根源
nest build是TypeScript版NestJS专属的编译命令,你的纯JS项目无需TS编译流程,因此不存在tsconfig.json,直接执行该命令必然触发报错。
解决方案
1. 停止使用nest build命令
JS版NestJS项目不需要编译步骤,直接运行源码即可,无需执行任何构建编译类命令。
2. 配置Vercel部署规则
在项目根目录创建vercel.json文件,明确Vercel对JS项目的处理逻辑:
{ "buildCommand": "echo 'JS项目无需构建'", "installCommand": "npm install", "functions": { "src/main.js": { "runtime": "@vercel/node@2" } }, "routes": [ { "src": "/(.*)", "dest": "src/main.js" } ] }
buildCommand:用无意义的提示命令替代编译操作,避免Vercel执行默认的错误构建逻辑functions:指定NestJS的入口文件为src/main.js,绑定Vercel的Node运行时routes:将所有请求转发至NestJS服务入口
3. 修正package.json脚本(可选)
如果习惯使用npm run build命令,可以修改package.json中的build脚本,避免执行无效操作:
{ "scripts": { "build": "echo 'JS项目无需构建'", "start": "node src/main.js", "start:dev": "nest start --watch" } }
注意:JS项目没有dist目录,若原配置中有start:prod命令指向dist/main.js,需改为node src/main.js或直接删除。
4. 部署验证
- 本地执行
npm start确认项目能正常运行 - 将代码推送到代码仓库后,在Vercel控制台导入仓库,使用上述配置完成部署
内容的提问来源于stack exchange,提问作者Izukishi
相关产品推荐
相关产品推荐

