Angular项目执行sb init初始化Storybook时出现JSON解析报错的求助
报错根因定位
从堆栈调用链可确认,异常并非来自你校验过的angular.json文件,而是Storybook CLI执行Angular初始化流程时,调用getAngularAppTsConfigJson方法读取项目内TS配置文件时,触发了原生JSON.parse的解析错误。你仅排查了angular.json,未覆盖同目录及嵌套引用的tsconfig类文件,是问题未被定位的核心原因。
分步解决操作
- 定位异常文件
优先打开项目根目录下的tsconfig.json,直接定位到文件第550个字符的位置,检查周边语法:最常见的触发原因是tsconfig中保留了TS支持但标准JSON不兼容的语法,包括代码注释、数组/对象最后一个元素后的尾逗号、复制粘贴时多带出的多余]符号。
注意:多数JSON校验工具对tsconfig文件有语法容错,会放行上述非标准语法,但Storybook CLI使用原生JSON解析器,不兼容这类语法,即使校验工具提示合规,实际解析仍会报错。 - 临时修复后重试初始化
将当前定位到异常的tsconfig文件内容调整为严格符合标准JSON格式:清除所有注释、删除所有尾逗号、移除多余的闭合符号,保存后重新执行初始化命令npx -p @storybook/cli sb init。 - 嵌套文件排查
如果根目录tsconfig调整后仍报错,顺着项目angular.json中build/test配置的tsconfig路径,逐个检查所有嵌套引用的tsconfig文件(如tsconfig.app.json、tsconfig.spec.json),同样清除其中的非标准JSON语法后重试。 - 初始化完成后的还原操作
Storybook初始化流程全部走完后,可以将之前临时删掉的tsconfig注释、尾逗号等TS兼容语法加回,不影响项目正常开发与Storybook的日常运行。
同类问题的快速排查方向
后续执行Storybook CLI命令触发同类JSON.parse位置报错时,优先排查所有被CLI读取的配置文件的纯JSON兼容性,无需反复校验已经确认合规的angular.json文件。
内容的提问来源于stack exchange,提问作者Marouen Abdi
相关产品推荐
相关产品推荐

