clasp项目TS文件无法转译推送,提示package.json不存在
解决clasp push时找不到package.json的TS文件问题
问题原因
clasp处理.ts文件时会触发TypeScript编译流程,这个流程需要读取项目根目录的package.json文件;而.js文件会被直接上传,跳过编译步骤,因此不会出现找不到文件的错误。即使你的.ts文件里写的是原生JavaScript代码,clasp依然会按照TS文件的逻辑处理。
解决方案
生成必要的配置文件
- 在项目根目录执行
npm init -y,快速生成默认的package.json文件。 - 执行
tsc --init生成tsconfig.json,可以根据需求调整配置,比如开启allowJs: true,让TypeScript编译器兼容文件内的原生JavaScript代码。
- 在项目根目录执行
禁用clasp的TypeScript编译(可选)
如果不需要TS编译功能,可以修改项目根目录的.clasp.json文件,添加"typeScript": false配置项,这样clasp会把.ts文件当作普通文本直接上传,跳过编译步骤。直接使用.js扩展名(最简方案)
既然文件内容本身就是原生JavaScript,没必要强行使用.ts扩展名,直接保留.js即可,这样既不需要额外配置,也能正常执行clasp push。
内容的提问来源于stack exchange,提问作者Jim Bell
相关产品推荐
相关产品推荐

