Pet*_*roz 6 visual-studio-code vscode-extensions
我正在实现一个提供自定义树视图的 Visual Studio Code 扩展,并在树视图中使用以下设置在上下文菜单中显示自定义命令contributes:
"contributes": {
...
"menus": {
"view/item/context": [
{
"command": "myExtension.uploadFile",
"when": "view == myBucketExplorer"
}
]
}
...
}
Run Code Online (Sandbox Code Playgroud)
现在,有没有办法只在树视图中为根节点显示此命令?是否有一个when子句可以帮助解决这个问题,或者我需要在实际调用菜单时以某种方式以编程方式禁用该命令?
您可以contextValue为您的TreeItem.
export class Something extends vscode.TreeItem {
// ...
constructor(
isRoot: boolean
) {
this.contextValue = isRoot ? 'YOUR_CONTEXT' : undefined;
}
}
async getChildren(element?: Something): Promise<Something[]> {
if (element) {
// NOT root
} else {
// ROOT -- Use different context for items
}
}
Run Code Online (Sandbox Code Playgroud)
然后使用
"when": "view == myBucketExplorer && viewItem == YOUR_CONTEXT"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3810 次 |
| 最近记录: |