Javascript 扩展如何在VSCode中扩展配置变量?
我试图为vscode编写一个扩展名,该扩展名需要从./vscode/settings.json文件中读取pasteImage.parth变量Javascript 扩展如何在VSCode中扩展配置变量?,javascript,visual-studio-code,Javascript,Visual Studio Code,我试图为vscode编写一个扩展名,该扩展名需要从./vscode/settings.json文件中读取pasteImage.parth变量 { "pasteImage.path": "${workspaceRoot}/assets/images" } 我尝试使用vscode.workspace.getConfiguration()函数获取如下变量: let folderPathFromConfig = vscode.workspace.getConfiguration('pasteI
{
"pasteImage.path": "${workspaceRoot}/assets/images"
}
我尝试使用vscode.workspace.getConfiguration()函数获取如下变量:
let folderPathFromConfig = vscode.workspace.getConfiguration('pasteImage')['path'];
但它得到了“${workspaceRoot}/assets/images”,我想要${workspaceRoot}扩展到工作区根的实际路径,我应该怎么做
谢谢你的提示 根据您可以使用的
let workspaceRoot = vscode.workspace.workspaceFolders[0];
要获取根工作空间文件夹
。通过使用Uri
,可以获取工作空间文件夹的绝对路径:
let workspaceRootPath = workspaceRoot.uri.path;
然后您只需替换folderPathFromConfig
的“${workspaceRoot}”
子字符串
总结如下:
let folderPathFromConfig = vscode.workspace.getConfiguration('pasteImage')['path'];
if (vscode.workspace.workspaceFolders !== undefined) { // is undefined if no folder is opened
let workspaceRoot = vscode.workspace.workspaceFolders[0];
folderPathFromConfig = folderPathFromConfig.replace('${workspaceRoot}', workspaceRoot.uri.path);
}
根据您可以使用的
let workspaceRoot = vscode.workspace.workspaceFolders[0];
要获取根工作空间文件夹
。通过使用Uri
,可以获取工作空间文件夹的绝对路径:
let workspaceRootPath = workspaceRoot.uri.path;
然后您只需替换folderPathFromConfig
的“${workspaceRoot}”
子字符串
总结如下:
let folderPathFromConfig = vscode.workspace.getConfiguration('pasteImage')['path'];
if (vscode.workspace.workspaceFolders !== undefined) { // is undefined if no folder is opened
let workspaceRoot = vscode.workspace.workspaceFolders[0];
folderPathFromConfig = folderPathFromConfig.replace('${workspaceRoot}', workspaceRoot.uri.path);
}
似乎没有针对它的服务,您必须扩展AbstractVariableResolversService
,类似于这样做
不幸的是,您无法从扩展中导入这些内容
这很简单,但我想知道当他们决定不这样做时,他们是怎么想的
IProcessEnvironment
仅用于内置的process.env
prop。似乎没有针对它的服务,您必须扩展AbstractVariableResolversService
,类似于此
不幸的是,您无法从扩展中导入这些内容
这很简单,但我想知道当他们决定不这样做时,他们是怎么想的
IProcessEnvironment
仅适用于内置的process.env
prop.作为一种变通方法,它不会解决问题。作为一种变通方法,它不会解决问题。