首页 > 解决方案 > 为 JSONSchema 附加属性定义 defaultSnippets

问题描述

正如标题所示,我想defaultSnippetadditionalProperitesJSONObject 定义一个 vscode。JSONSchema 如下所示

"$schema ": "http://json-schema.org/draft-07/schema#",
"type":"object",
"additionalProperties":{
   "type": "object",
   "properties":{
      "name":{"type":"string"}
   }
}

因此,仅添加defaultSnippet属性似乎不起作用:

"$schema ": "http://json-schema.org/draft-07/schema#",
"type":"object",
"additionalProperties":{
   "defaultSnippets": [{
         "label": "test",
         "description": "Additional property template",
         "body": {
         "$1": {
             "name": "$2"
             }
         }
   }],
   "type": "object",
   "properties":{
      "name":{"type":"string"}
   }
}

是否有解决方法来获得相同的行为?

标签: visual-studio-code

解决方案


您的代码是正确的,但此时 vscode 仅检查properties片段。我遇到了同样的问题,所以我创建了 Pull Request 并修复了这个问题。

https://github.com/microsoft/vscode-json-languageservice/pull/62

如果您赶时间或只是等待合并和更新,您可以替换默认扩展名。


推荐阅读