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

一文詳解npm如何更新項(xiàng)目最新依賴包

 更新時(shí)間:2023年01月15日 11:29:43   作者:牛奔  
npm包的更新速度很快,為了將項(xiàng)目或者全局依賴更新到最新版本,下面這篇文章主要給大家介紹了關(guān)于npm如何更新項(xiàng)目最新依賴包的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

NPM 是什么?

Node 軟件包管理器(NPM)提供了各種功能來(lái)幫助你安裝和維護(hù)項(xiàng)目的依賴關(guān)系。

由于錯(cuò)誤修復(fù)、新功能和其他更新,依賴關(guān)系可能會(huì)隨著時(shí)間的推移而變得過(guò)時(shí)。你的項(xiàng)目依賴越多,就越難跟上這些更新。

老舊的軟件包會(huì)對(duì)安全構(gòu)成威脅,并會(huì)對(duì)性能產(chǎn)生負(fù)面影響。最新的軟件包可以防止出現(xiàn)漏洞。這意味著定期檢查和更新依賴是很重要的。

如何保持依賴是最新的

現(xiàn)在,你可以逐一查看 package.json 中的每一個(gè)單獨(dú)的包,改變版本,然后運(yùn)行 npm install <package>@latest 來(lái)獲得最新版本。但這并不是最有效的方法。

想象一下,如果你有 20 個(gè)或更多的包,可以使用版本升級(jí)。相反,你應(yīng)該制定一個(gè)工作流程,在過(guò)期的依賴關(guān)系數(shù)量增加和升級(jí)變得越來(lái)越難之前,定期檢查新版本。

下面是一個(gè)我保持更新的工作流程:首先,發(fā)現(xiàn)哪些軟件包需要更新,以及版本落后的程度。接下來(lái),選擇單獨(dú)或一起批量更新軟件包。始終對(duì)更新進(jìn)行測(cè)試,以確保沒(méi)有發(fā)生破壞性變化。

我更喜歡單獨(dú)執(zhí)行主要版本的更新。對(duì)于主要的更新,你很可能會(huì)遇到破壞性的變化。與許多包相比,撤銷或處理與一個(gè)包有關(guān)的代碼變化要容易得多。

在這篇文章中,我將詳細(xì)介紹檢查和升級(jí)依賴關(guān)系的方法。

怎樣使用 npm outdated 命令

npm outdated

該命令將檢查每個(gè)已安裝的依賴關(guān)系,并將當(dāng)前版本與 npm registry 中的最新版本進(jìn)行比較。它在終端打印出一個(gè)表格,概述了可用的版本。

它是內(nèi)置在 NPM 中的,所以不需要下載額外的軟件包。npm outdated 是一個(gè)很好的開(kāi)始,可以了解所需的依賴性更新的數(shù)量。

  • Current 是當(dāng)前安裝的版本。
  • Wanted 是根據(jù)semver 范圍內(nèi)的軟件包的最大版本。
  • Latest 是在 npm registry 中被標(biāo)記為最新的軟件包版本。

使用這種方法,要安裝每個(gè)軟件包的更新,你只需要運(yùn)行:

npm update

請(qǐng)記住,使用 npm update 它永遠(yuǎn)不會(huì)更新到一個(gè)主要的(major),具有破壞性變化的版本。它更新 package.jsonpackage-lock.json 中的依賴關(guān)系。它將使用想要的版本。

為了獲得 "最新 "的版本,在單個(gè)安裝中附加 @latest,例如 npm install react@latest。

怎樣使用 npm-check-updates

對(duì)于高級(jí)和可定制的升級(jí)體驗(yàn),我推薦 npm-check-updates。這個(gè)包可以做所有 npm oudatednpm upgrade 能做的事情,并增加了一些自定義選項(xiàng)。不過(guò),它確實(shí)需要安裝一個(gè)包。

點(diǎn)擊打開(kāi)文檔

要開(kāi)始使用,請(qǐng)?jiān)谌职惭b npm-check-updates 軟件包:

npm install -g npm-check-updates

然后,運(yùn)行 ncu 來(lái)顯示要升級(jí)的軟件包。與 npm outdated 類似,它不會(huì)產(chǎn)生任何變化。

ncu
Checking package.json
[====================] 12/12 100%
 
 @testing-library/user-event    ^13.5.0  →  ^14.2.1
 @types/jest                    ^27.5.2  →  ^28.1.4
 @types/node                  ^16.11.42  →  ^18.0.1
 
Run ncu -u to upgrade package.json

要升級(jí)依賴性,你只需要運(yùn)行:

ncu --upgrade
 
// or 
ncu -u

資料:npm-check-updates

  • Red (顯示紅色) = major (主版本,或者說(shuō)是大版本)
  • Cyan (顯示青色) = minor(次要版本)
  • Green(顯示綠色) = patch (補(bǔ)丁版本)

這個(gè)方法只更新 package.json 文件中的依賴關(guān)系,并且會(huì)選擇最新的版本,即使它包括一個(gè)破壞性的變化。使用這種方法,npm install 不會(huì)自動(dòng)運(yùn)行,所以一定要在之后運(yùn)行它來(lái)更新 package-lock.json

要選擇你喜歡的版本類型,運(yùn)行 ncu --target [patch, minor, latest, newest, greatest]。

如何使用 npm-check-updates 互動(dòng)模式

ncu --interactive
 
// or 
ncu -i

互動(dòng)模式允許你選擇特定的軟件包進(jìn)行更新。默認(rèn)情況下,所有軟件包都被選中。

向下瀏覽每一個(gè)軟件包,用空格來(lái)取消選擇,當(dāng)你準(zhǔn)備好升級(jí)所有選擇的軟件包時(shí),回車鍵(enter)確定。

資料: npm-check-updates

有幾種方法可以提升交互式 npm-check-updates 的體驗(yàn)。

ncu --interactive --format group

這個(gè)命令將軟件包分組并組織成 主版本(major)、次要(minor)和補(bǔ)丁(patch)版本。

資料: npm-check-updates

npm-check-updates 提供了其他有用的工具,如 doctor mode,它可以安裝升級(jí)并運(yùn)行測(cè)試以檢查破壞性變化。

總結(jié)

養(yǎng)成定期更新你的依賴關(guān)系的習(xí)慣,將有助于你的應(yīng)用程序的安全性和性能。

npm oudatednpm-check-updates 都是有用的工具,可以檢查那些可以使用版本升級(jí)的軟件包。

https://www.freecodecamp.org/chinese/news/how-to-update-npm-dependencies/

到此這篇關(guān)于npm如何更新項(xiàng)目最新依賴包的文章就介紹到這了,更多相關(guān)npm更新項(xiàng)目最新依賴包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Nodejs學(xué)習(xí)item【入門手上】

    Nodejs學(xué)習(xí)item【入門手上】

    這篇文章主要介紹了Nodejs學(xué)習(xí)item【入門手上】,需要的朋友可以參考下
    2016-05-05
  • 參考EventEmitter實(shí)現(xiàn)完整訂閱發(fā)布功能函數(shù)

    參考EventEmitter實(shí)現(xiàn)完整訂閱發(fā)布功能函數(shù)

    這篇文章主要為大家介紹了參考EventEmitter實(shí)現(xiàn)完整訂閱發(fā)布功能函數(shù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • Node.js 使用命令行工具檢查更新

    Node.js 使用命令行工具檢查更新

    這篇文章主要介紹了Node.js 使用命令行工具檢查更新的方法,使用Node.js開(kāi)發(fā)命令行工具是開(kāi)發(fā)者應(yīng)該掌握的一項(xiàng)技能,適當(dāng)編寫命令行工具以提高開(kāi)發(fā)效率,有需要的小伙伴可以參考下
    2017-06-06
  • Node.js 日志處理模塊log4js

    Node.js 日志處理模塊log4js

    今天和大家分享一下NodeJS中寫日志的一個(gè)常用第三方包:Log4js.下面我們就來(lái)詳細(xì)探討下吧
    2016-08-08
  • Node.js中的不安全跳轉(zhuǎn)如何防御詳解

    Node.js中的不安全跳轉(zhuǎn)如何防御詳解

    安全是不容忽視的,每個(gè)開(kāi)發(fā)者都知道它非常重要,真正嚴(yán)肅對(duì)待它的卻沒(méi)有幾人。下面這篇文章主要給大家介紹了關(guān)于Node.js中不安全跳轉(zhuǎn)如何防御的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì)。需要的朋友可以參考下
    2018-10-10
  • Nodejs讀取文件時(shí)相對(duì)路徑的正確寫法(使用fs模塊)

    Nodejs讀取文件時(shí)相對(duì)路徑的正確寫法(使用fs模塊)

    本篇文章主要介紹了linux 環(huán)境 mysql寫入中文報(bào)錯(cuò)的相關(guān)知識(shí)。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧
    2017-04-04
  • Nodejs Stream 數(shù)據(jù)流使用手冊(cè)

    Nodejs Stream 數(shù)據(jù)流使用手冊(cè)

    這篇文章主要介紹了Nodejs Stream 數(shù)據(jù)流使用手冊(cè)的相關(guān)資料,感興趣的小伙伴一起學(xué)習(xí)吧
    2016-04-04
  • 淺談node模塊與npm包管理工具

    淺談node模塊與npm包管理工具

    這篇文章主要介紹了node模塊與npm包管理工具,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01
  • node.js爬蟲框架node-crawler初體驗(yàn)

    node.js爬蟲框架node-crawler初體驗(yàn)

    這篇文章主要介紹了node.js爬蟲框架node-crawler的相關(guān)資料,幫助大家利用node.js進(jìn)行爬蟲,感興趣的朋友可以了解下
    2020-10-10
  • npm包發(fā)布和刪除的超詳細(xì)教程

    npm包發(fā)布和刪除的超詳細(xì)教程

    npm是JavaScript的包管理器,也是世界上最大的軟件注冊(cè)中心,下面這篇文章主要給大家介紹了關(guān)于npm包發(fā)布和刪除的超詳細(xì)教程,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02

最新評(píng)論