1. 程式人生 > 其它 >npm 安裝 --save-dev 與 --save的使用與區別

npm 安裝 --save-dev 與 --save的使用與區別

npm敲到一半的時候發現:這個到底是-g呢還是--save還是--save-dev呢

1.首先要先了解package.json

在Node.js中,模組是一個庫或框架,也是一個Node.js專案。Node.js專案遵循模組化的架構,當我們建立了一個Node.js專案,意味著建立了一個模組,這個模組的描述檔案,被稱為package.json。

2.什麼是npm

npm 是一個包管理器,它讓 JavaScript 開發者分享、複用程式碼更方便。

在程式開發中我們常常需要依賴別人提供的框架,亦或是方法庫,寫 JS 也不例外。這些可以重複的框架程式碼被稱作包(package)或者模組(module),一個包可以是一個資料夾裡放著幾個檔案,而這些檔案就存放在package.json 。

3.如何生成package.json

$ npminit//專案初始化 $ npminit-y//快速生成package.json{"name":"vue-cli","version":"1.0.0","description":"","main":"index.js","dependencies":{"vue":"^2.5.17"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":"","license":"ISC"}

name-- 包名.
version

-- 包的版本號。
description- -包的描述。
author- -包的作者
dependencies / devDependencies--生產/開發環境依賴包列表。它們將會被安裝在 node_module 目錄下。
main- -main 欄位指定了程式的主入口檔案
license--授權
有興趣的可以去了解一下package屬性 此處為快速搭建

4.--save與 --save -dev的區別

---npm i 外掛 ,會把外掛安裝到node_modules目錄中,不會修改package.json,

---npm i 外掛 --save (-S) ,專案釋出上線之後還會依賴用到的外掛,沒有這些外掛,專案不能執行

---自動更改package.json 寫入dependencies 節點

---npm i 外掛 -g是不會更改package中的內容 但是可以存在node_modules目錄中

---沒有package.json 還怎麼開開心心的 clone呢

---npm i 外掛 --save-dev(-D) ,安裝到開發依賴中,專案上線之後不會用到的外掛,例如'babel-loader',專案解析完釋出

---自動更改package.json 寫入devDependencies 節點

dependencies(執行依賴)

也就是我們專案執行上線還會使用的外掛 比如webpack axios vant Element UI框架

devDependencies(開發依賴)

也就是幫助開發的外掛 比如babel live-server lodash loader類似的