VScode 扩展为 showInputBox 添加取消事件

大老师鬼冢

我有一个输入框,要求用户在我的扩展程序中输入他们的用户名。我希望当用户单击 esc 或取消扩展停止运行时。

这是我到目前为止尝试过的但没有运气(似乎onCancellationRequested期待一个事件而不是一个方法..

await window.showInputBox(
{prompt: "UserName: ",
    placeHolder: "UserName"}, 
{isCancellationRequested: true, onCancellationRequested: (cancelled)=> {throw new Error('cancelled')}})
伽马11

这不是CancellationToken它的用途。它几乎与您想要的相反,它可用于在用户执行任何输入之前编程方式取消输入弹出窗口

如果你想知道用户是否取消了输入框,你需要检查文档中Thenable提到的返回值showInputBox()

如果输入框被取消(例如按 ESC),则返回值将是未定义的。[...]

vscode.window.showInputBox({prompt: 'UserName', placeHolder: 'UserName'}).then(value => {
    if (value === undefined) {
        throw new Error('cancelled');
    }
    // handle valid values
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章