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

Nodejs全局安裝和本地安裝的不同之處

 更新時間:2016年07月04日 14:33:30   作者:白樹  
這篇文章主要介紹了Nodejs全局安裝和本地安裝的不同之處的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下

上一篇文章《Nodejs中 npm常用命令詳解》主要是整理了最常使用的npm命令及相關介紹,其中有提到全局安裝(npm install gulp -g)和本地安裝(npm install gulp),下圖來自Gulp中文網(wǎng)入門指南,可以看出全局安裝后gulp后還要進行本地安裝,一開始我疑惑了?為什么全局安裝的gulp么,還要進行本地安裝,難道不能在項目中直接調(diào)用本地安裝的包?

帶著疑惑,在google找了相關文檔,雜七雜八湊合起來才有了點眉目,讓我們一起解開nodejs全局安裝和本地安裝的一些疑惑,如果有講錯的地方,還請大家留意指正。

本文以Windows平臺上做測試,以gulp為示例做教程

什么是全局安裝(global)安裝位置

全局安裝方式是鍵入命令:npm install gulp -g 或npm install gulp--global,其中參數(shù)-g的含義是代表安裝到全局環(huán)境里面,包安裝在Node安裝目錄下的node_modules文件夾中,一般在 \Users\用戶名\AppData\Roaming\ 目錄下,可以使用npm root -g查看全局安裝目錄。

調(diào)用方式

全局安裝后可以供命令行(command line)使用,用戶可以在命令行中直接運行該組件包支持的命令,如下圖全局安裝gulp后的cmd文件

什么是本地安裝(local)安裝位置

本地安裝方式是鍵入命令:npm install gulp 或npm install gulp --save-dev等,其中參數(shù)--save-dev的含義是代表把你的安裝包信息寫入package.json文件的devDependencies字段中,包安裝在指定項目的node_modules文件夾下。

調(diào)用方式

本地安裝后可以直接通過require()的方式引入項目中node_modules目錄下的模塊,如下示例,本地安裝后直接在gulpfile.js中require('gulp')。

為什么全局安裝后還要本地安裝

僅全局安裝是夠嗎

1.在js實例代碼中,默認下node.js會在NODE_PATH和目前js所在項目下的node_modules文件夾下去尋找模塊,因此,如果只是全局安裝,不能直接通過require()的方式去引用模塊,需要手動解決包路徑的配置問題,當然你也可以復制全局安裝的node_modules文件夾到項目下,還有辦法可以選擇將環(huán)境變量的NODE_PATH設置為C:\Program Files\nodejs。

2.對于包的更新不好管理,可能你需要為每個包重新命名,如gulp@3.8.1、gulp@3.9.1...,為了區(qū)別不同項目使用指定的包,保證模塊之間的相互依賴(這塊下面會介紹),區(qū)別每個項目正常運行。

因此,不推薦只全局安裝。

本地安裝的重要性

最早的node.js/npm實際上是全局的,包括現(xiàn)在還兼容NODE_PATH,但是不能支持全局多版本,于是nodejs團隊改成本地安裝的方法可能就是為了保證不同版本包之間的相互依賴,什么意思呢,舉個例子weui組件中相互依賴的包就有12個

其中依賴包的指定版本號如下,不可輕易去修改,因為不同版本包對應依賴包的版本的功能有所差別,如果修改指定的版本來運行weui,就可能會編譯出錯等bug。

再舉個例子:

復制代碼 代碼如下:
包版本為:
A(0.0.1)依賴B(0.0.2),B(0.0.1)依賴C(0.0.3)一段時間原作者更新后,包版本為:A(1.0.1)依賴B(1.0.0),B(1.0.0)依賴C(1.0.0)

每一次的更新可能帶來不一樣的功能,在多人合作、發(fā)布模塊到npmjs社區(qū)、上傳到github給其他人使用時,保留模塊的版本信息可用于下載指定的版本號顯得特別重要。

本地安裝可以讓每個項目擁有獨立的包,不受全局包的影響,方便項目的移動、復制、打包等,保證不同版本包之間的相互依賴,這些優(yōu)點是全局安裝難以做到的。

另外,據(jù)node團隊介紹,本地安裝包對于項目的加載會更快。

有優(yōu)點也少不了缺點,如每次新項目都要本地安裝所依賴的包,安裝包時間相對較長,一來是包太大導致下載慢;二是浪費了硬盤空間,不過現(xiàn)在電腦硬盤動不動就幾個T,你還會在意節(jié)省這點空間嗎?

以上所述是小編給大家介紹的Nodejs全局安裝和本地安裝的不同之處,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • yarn?install命令報錯warning?package-lock.json?found解決辦法

    yarn?install命令報錯warning?package-lock.json?found解決辦法

    這篇文章主要給大家介紹了關于yarn?install命令報錯warning?package-lock.json?found的解決辦法,文中通過圖文將解決的辦法介紹的非常詳細,還分享了更多yarn install遇到的報錯及解決方案,需要的朋友可以參考下
    2024-02-02
  • Node.js進程管理之Process模塊詳解

    Node.js進程管理之Process模塊詳解

    本文詳細講解了Node.js進程管理之Process模塊,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • nodejs教程之環(huán)境安裝及運行

    nodejs教程之環(huán)境安裝及運行

    文章從nodejs環(huán)境安裝、文件結構、路由做了詳細介紹,然后結合mongodb制作注冊功能也做了細致的講述,是篇非常不錯的文章,這里推薦給大家
    2014-11-11
  • pnpm管理依賴包如何節(jié)省磁盤空間詳解

    pnpm管理依賴包如何節(jié)省磁盤空間詳解

    這篇文章主要為大家介紹了pnpm管理依賴包如何節(jié)省磁盤空間詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11
  • Windows下安裝Bun像Node或Deno的現(xiàn)代JS運行時

    Windows下安裝Bun像Node或Deno的現(xiàn)代JS運行時

    這篇文章主要為大家介紹了一款像Node或Deno的現(xiàn)代JavaScript運行時的bun在Windows下安裝過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • node.js中的fs.statSync方法使用說明

    node.js中的fs.statSync方法使用說明

    這篇文章主要介紹了node.js中的fs.statSync方法使用說明,本文介紹了fs.statSync的方法說明、語法、接收參數(shù)、使用實例和實現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • Node.js中Request模塊處理HTTP協(xié)議請求的基本使用教程

    Node.js中Request模塊處理HTTP協(xié)議請求的基本使用教程

    這篇文章主要介紹了Node.js中Request模塊處理HTTP請求的基本使用教程,request也支持OAuth的簽名請求,很好很強大,需要的朋友可以參考下
    2016-03-03
  • nodejs中實現(xiàn)修改用戶路由功能

    nodejs中實現(xiàn)修改用戶路由功能

    這篇文章主要介紹了nodejs中實現(xiàn)修改用戶路由功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-05-05
  • 使用node-media-server搭建一個簡易的流媒體服務器

    使用node-media-server搭建一個簡易的流媒體服務器

    這篇文章主要介紹了使用node-media-server搭建一個簡易的流媒體服務器,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • node.js的http.createServer過程深入解析

    node.js的http.createServer過程深入解析

    這篇文章主要給大家介紹了關于node.js的http.createServer過程的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用node.js具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-06-06

最新評論