我在snippets/snippet.json
文件中创建了这样的代码段:
{
"Add subscription": {
"scope": "typescript",
"prefix": "!subscription",
"body": "subscription: Subscription$0;",
"description": "Add subscription property to a class"
}
}
我也创建了一个package.json
文件:
{
// ...
"contributes": {
"languages": [
{
"id": "typescript",
"aliases": ["typescript", "ts"],
"extensions": [".ts"]
}
],
"snippets": [
{
"language": "typescript",
"path": "./snippets/snippets.json"
}
]
}
}
如果我将此代码片段JSON放入任何项目的.vscode/mysnippets.code-snippet
文件中,则可以正常工作。但是,如果我作为扩展发布并安装,则无法正常工作。
有什么主意吗?
答案 0 :(得分:1)
主要问题是该扩展程序是作为禁用的扩展程序安装的。
使用调试模式,一条消息告诉可能的原因。
您在
"main"
中拥有package.json
属性,但没有"activation"
属性。
此代码段扩展名中没有index.js
,因此请删除该行
"main": "index.js",
要获得更清洁的软件包,还请定义一个包含内容的文件.vscodeignore
文件
.vscode/**
.gitignore
仍然有警告
[netdjw.ddata-snippets]:扩展名“ ddata-snippets”中的一个或多个代码段很可能会混淆代码段变量和代码段占位符(有关详细信息,请参见https://code.visualstudio.com/docs/editor/userdefinedsnippets#_snippet-syntax)
您必须一次添加一个,以查看哪个片段导致了此警告。