VSCode点击JSON Schema的$ref链接如何跳转至对应本地文件
实现VSCode中JSON Schema $ref跳转本地文件的配置方法
方案1:通过本地Schema添加$id关联(无扩展依赖,推荐)
无需安装额外扩展,仅通过配置即可实现:
- 第一步:在本地
common.json的根节点添加$id字段,值为你线上使用的schema地址:
{ "$id": "https://api.test.com/schemas/common.json", "type": "object", "properties": { "email": { "type": "string", "format": "email" } } }
- 第二步:打开工作区配置文件
.vscode/settings.json,添加JSON schema关联配置:
{ "json.schemas": [ { // 可自定义匹配规则,仅对需要用到该ref的JSON文件生效 "fileMatch": ["**/*.json"], // 填写本地common.json相对于工作区根目录的路径 "url": "./common.json" } ] }
配置完成后重启VSCode,Option + 点击$ref链接就会直接跳转到本地common.json的对应属性节点,不会跳转至线上地址,且该配置不影响ajv的运行逻辑。
方案2:通过扩展配置前缀映射(无需修改原Schema文件)
如果不想修改原schema的内容,可安装JSON Schema跳转类扩展实现路径映射:
- 安装支持$ref映射的VSCode扩展
- 打开
.vscode/settings.json添加映射规则:
"jsonSchemaRefGo.mappings": { // 将线上schema前缀映射到本地对应的目录 "https://api.test.com/schemas/": "${workspaceFolder}/你的本地schema目录/" }
配置后扩展会自动将匹配到的线上地址替换为本地路径,实现跳转。
注意事项
- 如果你使用的是带注释的JSONC格式或者YAML格式的schema,对应修改
json.schemas为jsonc.schemas/yaml.schemas即可,逻辑一致。 - 若配置后未生效,可重启VSCode或重载窗口触发配置加载。
内容的提问来源于stack exchange,提问作者renan
相关产品推荐
相关产品推荐

