Parcel2报@parcel/transformer-json JSON5输入无效错误如何解决?
Parcel2
@parcel/transformer-json: JSON5: invalid end of input at 1:1 报错解决方案 按照以下优先级逐步排查即可定位问题:
- 排查全目录所有JSON类配置文件,不要仅校验自己手动修改过的文件。Parcel2默认会递归扫描项目所有层级的JSON、JSON5、JSONC以及无后缀的RC配置文件(包括
.gitignore忽略目录、隐藏目录下的相关文件),空文件、存在不可见特殊首字符的文件都会触发该报错,重点检查.parcelrc、.babelrc、.eslintrc、.prettierrc这类易被忽略的配置文件。 - 排查代码中引入JSON的逻辑。如果使用了动态路径引入JSON资源,比如
import(\./config/${runtimeVar}.json`)`,运行时路径拼接错误指向不存在的文件时,Parcel会返回空内容,触发JSON解析报错。 - 清除Parcel缓存后重试。Parcel2的本地缓存会留存异常的转换结果,执行以下命令清理缓存后重新启动服务即可:
# macOS/Linux rm -rf .parcel-cache dist # Windows rmdir /s /q .parcel-cache dist
- 恢复JSON转换器默认配置。如果手动修改过
.parcelrc中JSON相关的transformer配置,优先使用官方默认的@parcel/transformer-json处理普通JSON文件,避免手动指定JSON文件走JSON5转换器导致的语法校验冲突。
内容的提问来源于stack exchange,提问作者Bar-Levav
相关产品推荐
相关产品推荐

