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

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

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

NPM 是什么?

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

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

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

如何保持依賴是最新的

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

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

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

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

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

怎樣使用 npm outdated 命令

npm outdated

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

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

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

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

npm update

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

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

怎樣使用 npm-check-updates

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

點(diǎn)擊打開文檔

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

npm install -g npm-check-updates

然后,運(yùn)行 ncu 來顯示要升級的軟件包。與 npm outdated 類似,它不會產(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

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

ncu --upgrade
 
// or 
ncu -u

資料:npm-check-updates

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

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

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

如何使用 npm-check-updates 互動模式

ncu --interactive
 
// or 
ncu -i

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

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

資料: npm-check-updates

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

ncu --interactive --format group

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

資料: npm-check-updates

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

總結(jié)

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

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

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

到此這篇關(guān)于npm如何更新項(xiàng)目最新依賴包的文章就介紹到這了,更多相關(guān)npm更新項(xiàng)目最新依賴包內(nèi)容請搜索腳本之家以前的文章或繼續(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開發(fā)命令行工具是開發(fā)者應(yīng)該掌握的一項(xiàng)技能,適當(dāng)編寫命令行工具以提高開發(fā)效率,有需要的小伙伴可以參考下
    2017-06-06
  • Node.js 日志處理模塊log4js

    Node.js 日志處理模塊log4js

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

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

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

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

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

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

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

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

    這篇文章主要介紹了node模塊與npm包管理工具,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    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的包管理器,也是世界上最大的軟件注冊中心,下面這篇文章主要給大家介紹了關(guān)于npm包發(fā)布和刪除的超詳細(xì)教程,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02

最新評論