欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

nodeJS中關(guān)于path.resolve()的用法解析

 更新時(shí)間:2023年06月02日 14:47:23   作者:桃花扇J  
這篇文章主要介紹了nodeJS中關(guān)于path.resolve()的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

nodeJS關(guān)于path.resolve()用法

path是nodeJS的一個(gè)內(nèi)置模塊,可以直接在其他js文件中導(dǎo)入改模塊,代碼如下

var path = require("path")     //node的內(nèi)置模塊

該模塊導(dǎo)出很多path的方法,如圖1,我們要康康path.resolve() 是怎么用的

圖1 path的方法

path.resolve() 它的作用是拼接路徑,其傳參個(gè)數(shù)沒(méi)有限制,每個(gè)參數(shù)均表示一段路徑

我們看一個(gè)例子

var path = require("path");
const p = path.resolve("./","demo","img");
console.log(p);

【結(jié)果】第一行是它的運(yùn)行目錄,第二行是運(yùn)行結(jié)果  

接下來(lái)插入另一個(gè)變量的概念,__dirname, 在所有情況下,該變量都表示當(dāng)前運(yùn)行的js文件所在的目錄,它是一個(gè)絕對(duì)路徑。

例如,我們?cè)?e:\web\code\11webpack\webpack_jwh\09入口和出口\src 這個(gè)路徑下的index.js中寫(xiě)如下代碼

console.log(__dirname);

則輸出的結(jié)果為

在開(kāi)發(fā)時(shí),當(dāng)我們使用path.resolve()拼接路徑時(shí),會(huì)遇到需要使用絕對(duì)路徑的情況,但是當(dāng)我們把項(xiàng)目部署到服務(wù)器時(shí),絕對(duì)路徑會(huì)發(fā)生變化。

因此,需要一個(gè)可以計(jì)算的絕對(duì)路徑的表達(dá)方式。

有了__dirname,我們就可以解決以下問(wèn)題。

代碼如下 :

var path = require("path");
const p = path.resolve(__dirname,"demo","img");
console.log(p);

這樣不管是什么環(huán)境下,都可以拼接出正確的路徑

nodejs path.resolve解析路徑異常的坑

作為一個(gè)后端,今天又解決的前端問(wèn)題

問(wèn)題現(xiàn)場(chǎng)

近期項(xiàng)目中,涉及nodejs自動(dòng)生成文件,其中用到了shelljs。

各種路徑處理比較多,其中有個(gè)典型問(wèn)題:有人習(xí)慣用path.resolve(),去解析絕對(duì)路徑。

過(guò)段時(shí)間有人用了shelljs的cd方法(類(lèi)似于模擬shell命令中的cd命令)。這下扯了,項(xiàng)目各種路徑找不到。

觸發(fā)場(chǎng)景

shelljs使用cd命令后,又使用path.resolve,變成了狀態(tài)編程,自己和自己搞不愉快

原因 

path.resolve會(huì)默認(rèn)把shelljs 所在目錄作為父目錄解析絕對(duì)路徑

解決辦法

下面隨便用一種:

  • 1、不記錄shell的目錄狀態(tài),即不使用cd命令;
  • 2、在項(xiàng)目初始化運(yùn)行時(shí),獲取根目錄常量,公用該處引用;
  • 3、使用path.join()去拼接路徑;
  • 4、該用fs的用fs,不夠的再拿shell來(lái)補(bǔ)。

問(wèn)題模擬代碼如下:

let shell = ?require('shelljs');
let path = require("path");
shell.cd("E:\\code");
console.log(path.resolve('test'));
console.log(path.join('test'));

打印信息:

E:\code\test
test

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解一個(gè)基于套接字實(shí)現(xiàn)長(zhǎng)連接的express

    詳解一個(gè)基于套接字實(shí)現(xiàn)長(zhǎng)連接的express

    這篇文章主要介紹了詳解一個(gè)基于套接字實(shí)現(xiàn)長(zhǎng)連接的express,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Node.js五大應(yīng)用性能技巧小結(jié)(必須收藏)

    Node.js五大應(yīng)用性能技巧小結(jié)(必須收藏)

    本篇文章主要介紹了Node.js五大應(yīng)用性能技巧小結(jié)(必須收藏),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家
    2017-08-08
  • node.js-path模塊你了解多少

    node.js-path模塊你了解多少

    這篇文章主要為大家詳細(xì)介紹了node.js-path模塊,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-02-02
  • node.js命令行教程圖文詳解

    node.js命令行教程圖文詳解

    本文先介紹原生的node.js實(shí)現(xiàn)命令行交互,了解原生的api,然后通過(guò)commander.js和inquirer.js實(shí)現(xiàn)一個(gè)完整的交互命令行工具。感興趣的朋友跟隨小編一起看看吧
    2019-05-05
  • Node.js中處理錯(cuò)誤的4種最佳方法分享

    Node.js中處理錯(cuò)誤的4種最佳方法分享

    錯(cuò)誤處理并不是編碼工作中最吸引人的部分,但在?Node.js?中構(gòu)建可靠、生產(chǎn)級(jí)別的應(yīng)用程序時(shí),它是絕對(duì)必要的,下面小編就來(lái)為大家介紹一下Node.js中處理錯(cuò)誤的4種最佳方法吧
    2025-02-02
  • Electron如何通過(guò)ffi-napi調(diào)用dll導(dǎo)出接口

    Electron如何通過(guò)ffi-napi調(diào)用dll導(dǎo)出接口

    文章介紹了如何在Electron項(xiàng)目中使用ffi-napi模塊調(diào)用DLL文件,并詳細(xì)描述了環(huán)境搭建、安裝Electron和ffi-napi、配置Visual Studio和Python環(huán)境、解決常見(jiàn)問(wèn)題等步驟,感興趣的朋友跟隨小編一起看看吧
    2025-02-02
  • 使用Fetch API執(zhí)行GraphQL查詢(xún)和變體問(wèn)題

    使用Fetch API執(zhí)行GraphQL查詢(xún)和變體問(wèn)題

    這篇文章主要介紹了使用Fetch API執(zhí)行GraphQL查詢(xún)和變體問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • 解決nodejs的npm命令無(wú)反應(yīng)的問(wèn)題

    解決nodejs的npm命令無(wú)反應(yīng)的問(wèn)題

    今天小編就為大家分享一篇解決nodejs的npm命令無(wú)反應(yīng)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Node搭建https服務(wù)器實(shí)例詳解

    Node搭建https服務(wù)器實(shí)例詳解

    這篇文章主要介紹了Node搭建https服務(wù)器的方法,結(jié)合實(shí)例形式詳細(xì)分析了創(chuàng)建ssl證書(shū)以及node.js調(diào)用https模塊搭建https服務(wù)器的相關(guān)操作技巧,需要的朋友可以參考下
    2023-04-04
  • node安裝及環(huán)境變量配置詳細(xì)教程

    node安裝及環(huán)境變量配置詳細(xì)教程

    在很多前端項(xiàng)目中都需要配置node的環(huán)境變量,下面這篇文章主要給大家介紹了關(guān)于node安裝及環(huán)境變量配置的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07

最新評(píng)論