【问题标题】:Vscode API: read clipboard text contentVscode API:读取剪贴板文本内容
【发布时间】:2019-02-11 14:12:05
【问题描述】:

我目前正在尝试为 Visual Studio Code 编写一个扩展,但我无法理解如何读取剪贴板内容强>。

VSCode API 指定此方法:

readText ():Thenable<String>

按照我读到的关于Thenable 的内容,我应该能够像这样获得剪贴板的文本:

var clipboard_content = vscode.env.clipboard.readText().then((text)=>text);

但我设法得到的只是一个Promise { pending } 对象。

我想要得到的是剪贴板内容为string

【问题讨论】:

    标签: node.js promise visual-studio-code clipboard vscode-extensions


    【解决方案1】:

    基本错误。

    因为您使用promises(异步)并想要async/await(线性)功能。

    应该是(承诺,异步代码):

    vscode.env.clipboard.readText().then((text)=>{
        clipboard_content = text; 
        /* code */
    });
    

    或(顺序代码)

    let clipboard_content = await vscode.env.clipboard.readText(); 
    /* code */
    

    PS.:在 JS 中,命名变量和函数时应该使用camelCase 而不是snake_case。这是JavaScript Standard Style的建议之一

    【讨论】:

    • 我认为,使用await 不会使您的代码成为synchronous,而是sequential。我还建议将“线性”替换为“顺序”作为描述顺序事件的更好术语。 :-)
    猜你喜欢
    • 1970-01-01
    • 2021-01-16
    • 2010-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-19
    相关资源
    最近更新 更多