部署Firestore Cloud Function遇Cannot find module '../lib/tslint-cli'错误求助
解决Firebase Cloud Functions部署时TSLint模块找不到的问题
你遇到的核心问题是项目本地的TSLint依赖没有正确安装——虽然你全局安装了TSLint,但Firebase执行预部署的lint脚本时,会优先调用项目本地node_modules内的工具,而非全局版本,这就导致了模块找不到的报错。
试试下面的步骤来修复:
1. 本地安装TSLint和TypeScript依赖
进入你的functions目录,执行本地安装命令,把依赖添加到项目的开发依赖中:
cd /Users/nlam/Dropbox/dev/myproject/backend/functions npm install tslint typescript --save-dev
2. 重置依赖(若第一步无效)
如果本地安装后仍报错,可能是node_modules内存在缓存或损坏文件,执行以下步骤重置依赖:
# 进入functions目录 cd /Users/nlam/Dropbox/dev/myproject/backend/functions # 删除现有依赖包和锁文件 rm -rf node_modules package-lock.json # 重新安装所有依赖 npm install
3. 临时跳过Lint(应急方案)
如果需要快速部署测试,也可以暂时跳过lint检查,在部署命令中添加--no-lint参数:
firebase deploy --only functions --no-lint
注意:不建议长期使用这个方案,Lint能帮你提前发现TypeScript代码的潜在问题。
最后可以检查下package.json的scripts部分,确保lint命令配置正确:
"scripts": { "lint": "tslint --project tsconfig.json", // 其他脚本... }
内容的提问来源于stack exchange,提问作者NLam
相关产品推荐
相关产品推荐

