在Node / TypeScript项目中,如果我正在使用VSCode编辑tsconfig.json
或package.json
文件,那么编辑器会提供一些有用的intellisense,它是从TypeScript获得的。因此,我猜测在某个地方.d.ts
定义文件与每个文件之间都有关联,以提供此帮助。
我的用例是,我必须维护的项目中有许多.json
文件。这些文件由外部工具使用,因此它们不能是.js
或.ts
文件。为了减少对这些文件的编辑,我希望能够编写一个关联的.d.ts
文件,并以某种方式告诉编辑器这是该.json
文件的定义文件,然后从该文件中获取所有编辑器帮助。 。
我该怎么做?
或者,tsconfig.json
或package.json
定义文件在哪里,VSCode如何将它们关联?
VSCode可以通过JSON中的$schema
键利用JSON模式:
{
"$schema": "http://json.schemastore.org/coffeelint",
"line_endings": "unix"
}
请注意,此语法是VS Code特定的,不是JSON Schema规范的一部分。添加$ schema键会更改JSON本身,使用JSON的系统可能不会想到,例如,模式验证可能会失败。
您也可以在设置中定义结构:
"json.schemas": [
{
"fileMatch": [
"/.myconfig"
],
"schema": {
"type": "object",
"properties": {
"name" : {
"type": "string",
"description": "The name of the entry"
}
}
}
}
]