關(guān)于npm?i幾種常見命令的區(qū)別詳解
前言
在我們開發(fā)中會(huì)經(jīng)常用到npm i 這個(gè)命令,有npm i -S,npm i -g , npm i -D,npm install --save-dev, npm i -save,那么這幾種命令到底有什么區(qū)別呢?
要先知道這幾種命令的區(qū)別,我們首先要認(rèn)識(shí)兩個(gè)單詞,分別是dependencies和devDependencies。
dependencies:是生產(chǎn)和開發(fā)都會(huì)用到的依賴包,會(huì)被打包到項(xiàng)目中。
devDependencies:是只在開發(fā)環(huán)境中使用的依賴包,不會(huì)被打包到項(xiàng)目中。
下面我會(huì)放一張用package.json的默認(rèn)圖,然后分別運(yùn)行npm i -S、npm i -save、npm i -D、npm i --save-dev來看他們分別有什么區(qū)別:

npm i -S
我們以安裝echarts為例:

可以發(fā)現(xiàn),安裝在了dependencies下,也就是生產(chǎn)和開發(fā)都會(huì)用到。
npm i -save

通過圖片我們可以發(fā)現(xiàn),npm i -save 下載的依賴包也是在dependencies中的。
也就是說npm i -S 和 npm i -save是等價(jià)的,下載的依賴包都是在dependencies中,也就是開發(fā)和生產(chǎn)都會(huì)用到。
npm i -D

npm i -D執(zhí)行后,安裝在了devDependencies中,也就是只有開發(fā)環(huán)境使用。
npm i --save-dev

可以發(fā)現(xiàn),依然安裝在了只有開發(fā)環(huán)境使用的devDependencies中。
npm i

總結(jié)
npm i -S(-save)下載的依賴包是安裝在dependencies中,生產(chǎn)和開發(fā)環(huán)境都會(huì)使用。
npm i -D(--save-dev)下載的依賴包安裝在devDenpendencies中,只有在開發(fā)環(huán)境中使用。
npm i -g 是把模塊安裝到全局,不會(huì)在項(xiàng)目的node包中保存,也不會(huì)將注入dependencies和devDependencies中。
npm i 的話,是安裝在dependencies中,也就是說生產(chǎn)和開發(fā)都會(huì)用到。
到此這篇關(guān)于npm i幾種常見命令區(qū)別的文章就介紹到這了,更多相關(guān)npm i常見命令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
一文學(xué)會(huì)如何升級(jí)npm管理的各依賴版本
npm在前端開發(fā)流程中提供了非常完善的自動(dòng)化工具鏈,已成為每個(gè)前端開發(fā)者必備的工具,下面這篇文章主要給大家介紹了關(guān)于如何升級(jí)npm管理的各依賴版本,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2022-09-09
用node開發(fā)并發(fā)布一個(gè)cli工具的方法步驟
這篇文章主要介紹了用node開發(fā)并發(fā)布一個(gè)cli工具的方法步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-01-01
使用Node.js搭建Vue項(xiàng)目的詳細(xì)步驟
Vue.js 是一款流行的 JavaScript 框架,而 Node.js 提供了一個(gè)強(qiáng)大的運(yùn)行環(huán)境,兩者的結(jié)合使得開發(fā)者可以輕松構(gòu)建現(xiàn)代化的前端項(xiàng)目,本文將介紹如何使用 Node.js 搭建一個(gè)基本的 Vue 項(xiàng)目,需要的朋友可以參考下2023-12-12
Nodejs實(shí)現(xiàn)的操作MongoDB數(shù)據(jù)庫(kù)功能完整示例
這篇文章主要介紹了Nodejs實(shí)現(xiàn)的操作MongoDB數(shù)據(jù)庫(kù)功能,結(jié)合完整實(shí)例形式分析了nodejs針對(duì)MongoDB數(shù)據(jù)庫(kù)的連接及增刪改查基本操作技巧,需要的朋友可以參考下2019-02-02
Node.js設(shè)置CORS跨域請(qǐng)求中多域名白名單的方法
這篇文章主要介紹了Node.js設(shè)置CORS跨域請(qǐng)求中多域名白名單的方法,文中通過示例代碼介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。2017-03-03
Nodejs?http模塊返回內(nèi)容中文亂碼問題及解決
這篇文章主要介紹了Nodejs?http模塊返回內(nèi)容中文亂碼問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12

