Javascript VSCode扩展直接使用多步输入
我想直接使用多步骤输入,例如用户选择 F1-然后开始选择项目的步骤 目前,我找到了以下示例,并删除了quickOpen和basic输入 因为我直接想明确使用多步输入,而不要求选择它 我不想从这个开始 当用户使用F1时,我想从此开始Javascript VSCode扩展直接使用多步输入,javascript,node.js,typescript,visual-studio-code,vscode-extensions,Javascript,Node.js,Typescript,Visual Studio Code,Vscode Extensions,我想直接使用多步骤输入,例如用户选择 F1-然后开始选择项目的步骤 目前,我找到了以下示例,并删除了quickOpen和basic输入 因为我直接想明确使用多步输入,而不要求选择它 我不想从这个开始 当用户使用F1时,我想从此开始 当前第一次选项是[多步输入] const options={multiStepInput} 如果不想显示该步骤,请将options设置为真正需要的选项 (类型) 诸如此类: commands.registerCommand('samples.quickInpu
当前第一次选项是
[多步输入]
const options={multiStepInput}
如果不想显示该步骤,请将options
设置为真正需要的选项
(类型)
诸如此类:
commands.registerCommand('samples.quickInput', async () => {
const options = ['vscode-data-function', 'vscode-appservice-microservices', 'vscode-appservice-monitor', 'vscode-appservice-preview', 'vscode-appservice-prod'].map(label => ({label}));
const quickPick = window.createQuickPick();
quickPick.items = options;
quickPick.onDidChangeSelection(([{label}]) => {
window.showInformationMessage(label);
quickPick.hide();
});
quickPick.show();
})
更新
如果您只想跳过第一个快速输入并立即启动多步骤输入
,您可以在命令处理程序中删除所有剩余的代码,然后使用此命令
context.subscriptions.push(commands.registerCommand('samples.quickInput', async () => {
multiStepInput(context);
}));
这相当于
options[selection[0].label](context)
因为选择了
multisteppinput
时,options[selection[0].label]
是multisteppinput
。如果调用multisteppinput(context).catch(console.error)代码>@rioV8-我不确定我是否理解上下文,请提供所有代码好吗?它应该在register命令中吗?怎么做?你看过activate
call@rioV8-是的,我尝试过很多东西……目前第一个选项是const options={multiStepInput,}
。如果您不想显示该步骤,请设置选项
您真正想要的选项..我尝试了它,但不确定如何在上下文中使用它,您能否使用我问题中的代码进行更新?我希望启动此扩展时将直接调用'./multiStepInput'
,因为我已经更新了答案,如果这是您的意思,请告诉我Hanks 1+,这很接近:),我希望这些步骤将继续执行“/multiStepInput”和“/multiStepInput”文件中的所有步骤,只是省略第一个选择。在这里,您只使用多步骤示例中的一个步骤,我需要它们全部省略第一个步骤。谢谢Greate将检查它:)
context.subscriptions.push(commands.registerCommand('samples.quickInput', async () => {
multiStepInput(context);
}));
options[selection[0].label](context)