vscode.workspace.openTextDocument 无提示失败

Pet*_*one 3 visual-studio-code vscode-extensions

使用相同的 Uri 值,openTextDocument无法产生任何明显的效果,但executeCommand成功打开文档。

vscode.workspace.openTextDocument(uri);
vscode.commands.executeCommand("vscode.open", uri);
Run Code Online (Sandbox Code Playgroud)

是否存在任何已知问题vscode.workspace.openTextDocument

Gam*_*a11 5

这可能只是对什么的openTextDocument() 误解。它只是创建一个vscode.TextDocument实例,实际上在 UI 中显示它与此无关。这就是为什么它位于vscode.workspace命名空间而不是vscode.window.

vscode.window.showTextDocument用于实际显示文档:

在文本编辑器中显示给定文档。可以提供一列来控制编辑器的显示位置。可能会更改活动编辑器。

vscode.workspace.openTextDocument(...).then(
    document => vscode.window.showTextDocument(document));
Run Code Online (Sandbox Code Playgroud)