我为 Visual Studio Code编写了一个非常简单的TreeView扩展,它显示了 VSCode任务的基本列表并在选择时执行任务。
我希望树视图在添加新任务时自动更新(通过 tasks.json 文件,或从 package.json 文件脚本等自动检测到的任务),但无法弄清楚如何这样做。
在我的 activate 方法中,我注册了 TreeDataProvider 和执行命令:
vscode.window.registerTreeDataProvider('vscodeTasks', treeProvider);
let disposable = vscode.commands.registerCommand('task.runTask', task => {
vscode.tasks.executeTask(task);
});
vscode.context.subscriptions.push(disposable);
Run Code Online (Sandbox Code Playgroud)
在我在 getChildren 函数中实现 TreeDataProvider 时,我使用以下方法获取任务:
vscode.tasks.fetchTasks()
Run Code Online (Sandbox Code Playgroud)
并将每个变成一个 TreeItem
任何有关自动刷新的帮助将不胜感激。