假設我們的js文件寫在server目錄中,但是我們的資源文件存儲在app/img目錄中。
實現功能
如下圖,我們需要在server/index.js文件中使用fs讀取app/img/favicon.ico文件。
實現方法
在node.js只提供了一個 dirname全局變量。通過 dirname可以獲得“C:/wwwroot/yidata/server”。這時需要用到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(".")
總結
也可以直接獲取項目根目錄,但是要注意的是使用這個方法在一些情況下存在問題,以前遇到過,想不起來了。大家留意下,有問題可以留言交流。
新聞熱點
疑難解答