我很想写一个类似yo插件但带有一些UI的插件。但是您无法在vscode中打开目录之前工作。我需要在用户界面中选择一个目录并自动生成代码。
任何人都可以告诉我使用哪个API来执行此类操作,我将对此进行深入研究。
答案 0 :(得分:2)
如果当前未打开目录,则可以使用vscode.window
namespace中的showOpenDialog()
方法让用户选择目录。使用canSelectFiles: false
和canSelectFolders: true
,它变成一个文件夹选择器。之后,您可以运行"vscode.openFolder"
命令打开新创建的工作区。
vscode.window.showOpenDialog({
canSelectFolders: true,
canSelectFiles: false
}).then(folders => {
if (folders != null && folders.length > 0) {
setupProject(folders[0].fsPath);
vscode.commands.executeCommand("vscode.openFolder", folders[0]);
}
});
这基本上是我们为"init project" command in the Haxe extension采取的方法。