Я работаю над расширением Visual Studio Code, и мне нужно определить, когда какое-то окно документа закрыто. Я знаю о событии vscode.workspace.onDidCloseTextDocument, и он работает в целом.
Но если я открою файл из рабочей области через API:
vscode.workspace.openTextDocument(localPath).then(function (doc) {
vscode.window.showTextDocument(doc, 1);
});
а затем закройте его, onDidCloseTextDocument не срабатывает как обычно. Его огонь, но через несколько минут.
Я знаю, это какая-то ошибка или VSCode так работает, но мне нужно знать, как определить, когда окно документа закрыто.
Я читал, что открываемый через API файл - это своего рода «виртуальный» файл. Так что, вероятно, это причина проблемы.
TextDocument.isClosed
при закрытииTextDocument
через API? - person HaaLeo   schedule 22.02.2018Note that the lifecycle of the returned document is owned by the editor and not by the extension. That means an onDidClose-event can occur at any time after opening it.
? - person Tarun Lalwani   schedule 01.03.2018