利用Node.js获取项目根目录的小技巧

2020-06-17 07:53:31易采站长站整理

假设我们的js文件写在server目录中,但是我们的资源文件存储在app/img目录中。

实现功能

如下图,我们需要在server/index.js文件中使用fs读取app/img/favicon.ico文件。

实现方法

在node.js只提供了一个 dirname全局变量。通过 dirname可以获得“C:wwwrootyidataserver”。这时需要用到

path

首先


import path from 'path'; (ES6)或var path = require
(

'path '

);

path.join(dirname,'../')

即可获取到node.js的项目根目录。


path.join(dirname,'../app/img/favicon.ico')

即可获取目标文件。

由上面的例子可知,

path.join
将多个参数组合成一个
path
,因此我们只需要参照路径表示方法合并即可。比如js文件在第三层目录,那么项目根目录就是
path.join(__dirname,'../../../')


path.resolve(".")

总结

也可以直接获取项目根目录,但是要注意的是使用这个方法在一些情况下存在问题,以前遇到过,想不起来了。大家留意下,有问题可以留言交流。