Vscode API: чтение текстового содержимого буфера обмена - PullRequest
0 голосов
/ 11 февраля 2019

Я сейчас пытаюсь написать расширение для Код Visual Studio , и мне не удается понять, как читать содержимое буфера обмена .

API VSCode определяет этот метод:

readText ():Thenable<String>

После того, что я прочитал о Thenable, я смогу получитьТекст буфера обмена выглядит так:

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

Но все, что мне удается получить, это Promise { pending } объект.

То, что я хотел бы получить , это содержимое буфера обмена какstring

1 Ответ

0 голосов
/ 11 февраля 2019

Базовая ошибка.

Поскольку вы используете promises (асинхронный) и хотите async/await (линейный) функционал.

Должно быть (обещания, асинхронный код):

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

или (синхронный код)

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