Shopify主题settings_schema.json插入配置保存时出现Invalid JSON: unexpected token报错
报错核心原因
- 报错完全是JSON语法格式错误导致,和Safari浏览器操作没有关联
- 具体错误点:
- 原
settings_schema.json本质是个存放配置模块的JSON数组,你插入自定义片段时,没有在第一个已有配置模块、新插入的自定义模块这两个相邻数组元素之间加必需的分隔逗号 - 插入内容后没有把数组的闭合中括号移到自定义模块的外侧,或是在数组最后一个元素后留了多余的尾随逗号,直接导致解析器遇到无效符号抛出
Invalid JSON: unexpected token提示
- 原
- 原自定义配置的所有展示文案都是英文,不适配国内站点的前台展示,需要全部替换为中文内容

可直接复制使用的修正后代码
[ { "name": "theme_info", "theme_name": "Themekit template theme", "theme_version": "1.0.0", "theme_author": "Shopify", "theme_documentation_url": "https://github.com/Shopify/themekit", "theme_support_url": "https://github.com/Shopify/themekit/issues" }, { "name": "用户来源调研配置", "settings": [ { "type": "text", "id": "hau_form_options", "label": "调研选项", "default": "微信, 微博, 抖音, 小红书, 朋友推荐, 线下活动, 搜索引擎, 其他", "info": "使用英文逗号分隔每个选项" }, { "type": "header", "content": "表单校验规则" }, { "type": "checkbox", "id": "hau_form_validation", "label": "启用表单必填校验", "default": true }, { "type": "text", "id": "hau_error_message", "label": "通用错误提示文案", "info": "用户未选择来源选项时展示的报错内容", "default": "请选择对应的来源选项" }, { "type": "text", "id": "hau_error_message_other", "label": "其他选项输入框错误提示文案", "info": "用户选择“其他”但未填写具体内容时展示的报错内容", "default": "请填写对应来源信息" }, { "type": "header", "content": "错误提示样式" }, { "type": "color", "id": "hau_error_color", "label": "错误提示文字颜色", "default": "#ff0000" } ] } ]
操作注意事项
- 保存代码前可以先用本地JSON格式化工具校验格式,确认没有漏加逗号、括号不配对、多余尾随逗号的问题
- 不要在JSON数组的最后一个元素后面留额外的逗号,严格解析器会直接判定格式无效
内容的提问来源于stack exchange,提问作者cosmofry
相关产品推荐
相关产品推荐

