什么 vs 命令从 URI 路径打开 vscode 中的文件?

What vs command opens files in vscode from URI paths?

我有一个数组,其中包含工作区中文件的路径。 我想执行一个打开所有这些文件的命令。我使用哪个命令?

这是我的路径的数组示例: ["/c:/Users/User/Desktop/Kod/extension/src/home.ts", /c:/Users/User/Desktop/Kod/extension/src/main.ts]

我从执行此功能的网络视图发送这些路径:

webviewView.webview.onDidReceiveMessage(async (data) => {
  const { tabPaths, name, isOpen } = data.value;
  switch (data.type) {
    case "onOpenTabs": {
      if (!data.value || !tabPaths) {
        return;
      }
      tabPaths.forEach(path => {
        vscode.commands.executeCommand("vscode.open", path);
      });
      break;
  }
});

我可以确认我在 onDidReceiveMessages 中获得了路径。 然后我尝试 vscode.open 命令但我收到此错误消息:

是不是命令错误?我可以做点别的吗?

啊!行。感谢 Mark and rioV8 我知道了答案。我没有保存有效的文本文档。 相反,我只是按原样保存一个 vscode.workspace.textDocuments 数组。像这样:

const paths = vscode.workspace.textDocuments.map(
  (doc) => doc
);

然后使用 vscode.window.showTextDocument 而不是 vscode.commands.executeCommand 打开它们。像这样:

paths.forEach(doc => {
  vscode.window.showTextDocument(doc);
});

非常简单而且有效。谢谢。