Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用nodejs获取父文件夹名称_Javascript_Node.js_Visual Studio Code - Fatal编程技术网

Javascript 如何使用nodejs获取父文件夹名称

Javascript 如何使用nodejs获取父文件夹名称,javascript,node.js,visual-studio-code,Javascript,Node.js,Visual Studio Code,如何从nodejs中的worspacefolder路径获取父文件夹名称。我尝试过,但没有工作。有人能找到我在哪里出错的吗?文件夹名称应为rain var pathname=vscode.workspace.workspaceFolders[0].uri; /* c:/xampp/htdocs/rain/tree */ var prevFolder= path.dirname(pathname).split(path.sep).pop(); console.log(prev

如何从nodejs中的worspacefolder路径获取父文件夹名称。我尝试过,但没有工作。有人能找到我在哪里出错的吗?文件夹名称应为rain

  var pathname=vscode.workspace.workspaceFolders[0].uri;  
  /* c:/xampp/htdocs/rain/tree */

  var prevFolder= path.dirname(pathname).split(path.sep).pop();

  console.log(prevFolder)

您可以从
process.cwd()
获取当前工作目录;之后,您可以根据自己的选择使用它。

我不知道“vscode.workspace.workspaceFolders[0].uri”命令。 但如果它返回“c:/xampp/htdocs/projects/rain/tree”,并且您需要tree,则可以执行以下操作:

  var pathname=vscode.workspace.workspaceFolders[0].uri
  var prevFolder= pathname.split("/");
  console.log(prevFolder[prevFolder.length-1])


如果您不使用path.sep,您自己的解决方案将起作用(因为您在Windows上,它被设置为“\”而不是“/”:

var prevFolder= path.dirname(pathname).split('/').pop();
但为了完全避免分隔符问题,您可以使用:

var prevFolder= path.basename(path.dirname(pathname));
可能也比拆分方法更有效。

保持简单:

var prevFolder = path.basename(path.dirname(pathname));
不需要数组摆弄。

像这样尝试

path.dirname(filename).split(path.sep).pop()

如果我们使用进程,我们无法获取工作区文件夹路径,让我检查一下。1 minNo..不工作..像这样:/c:/xampp/htdocs/好的,我误解了。这就是您所需要的
path.basename(path.dirname(pathname))
不需要数组操作。您要求指出您的错误。您得到的答案与您显示的代码有关。该代码对您的问题至关重要。似乎是您无意中删除了它。因此,我取消了该编辑。请记住,即使在收到答案后,问题也需要有意义。尤其是在需要保持这些答案的有效性。你能发布你对那个问题的答案吗?哇,你的编辑看起来和我之前的答案非常相似……谢谢。@马克,在编辑我的答案时没有看到你的答案。它们实际上是完全相同的。这是一个强有力的迹象,表明这可能是正确的方法;-)