本地节点进程在错误的目录中运行

时间:2016-01-20 16:34:54

标签: node.js

我正在使用PHP storm 9在我的本地开发环境中运行节点实例。但是该过程似乎在server.js父目录中运行。

我的文件夹结构如

app/
  app_server/
    server.js
    user_resources/
  user_resources/

当我在本地实例中编写文件以在app /中编写user_resources时,当我在实时环境中运行相同的进程时,它会在app_server /

中写入user_resources
pdf.create(html, options).toFile(path+filename, function (err, reuslt) {
  callback();
});

使用fs writeFile,readFile或readdir给出类似的行为

本地节点服务器我使用PHPstorm运行,而实时服务器运行永远

本地和现场都是一个ubuntu系统。

有关为什么本地节点似乎在server.js父目录中运行的任何建议。

1 个答案:

答案 0 :(得分:1)

节点服务器可能由PHPStorm从app目录执行,而实时进程从app/app_server运行。

如果服务器代码中没有提供其他提示,那么确切地放置user_resources它将驻留在当前工作目录(这是涉及节点进程的路径)中。

您可能想要指定相对于server.js位置的路径,这可以像这样轻松完成:

var userResourcePath = __dirname + '/user_resources`;

节点始终确保将__dirname设置为其所在文件的路径。

我假设您的实时环境user_resources路径(app/app_server/user_resources)是您想要进行本地开发的路径。