二者都是項目的配置文件,聲明瞭項目依賴的 npm 包及包的版本。前端
package.json 包含如下內容:vue
項目名稱 | 項目版本 | 做者 | 項目許可證 | 執行命令 | 執行依賴 | 開發依賴 |
---|---|---|---|---|---|---|
name | version | author | license | scripts | dependencies | devDependencies |
這裏並非全部的內容,只是列舉了一些經常使用的字段,詳細可參考官方文檔。react
package-lock.json 在執行 npm i 的時候生成,用來記錄實際安裝的 npm 包的來源和版本。能夠鎖定安裝時的包的版本,須要上傳到 git,確保你們使用的包版本一致。jquery
dependencies 聲明執行期須要的依賴,好比 echarts、jquery、axios、vue、react。 devDependencies 聲明開發時所須要的依賴,好比:gulp、webpack、jest。webpack
dependencies | devDependencies |
---|---|
npm i xx | npm i xx --save-dev |
version: a.b.c
複製代碼
a - 主要版本,b - 次要版本,c - 補丁版本。ios
符號 | 含義 | 規則 |
---|---|---|
1.0.0 | 1.0.0 | 精確匹配版本 |
^1.2.3 | 1.2.3 <= version < 2.0.0 | 不容許第一個非零數字(從左到右)的更新 |
^0.1.2 | 0.1.2 <= version < 0.2.0 | 同上 |
^1.0.0 | 1.0.0 <= version < 2.0.0 | 同上 |
~1.2.3 | 1.2.3 <= version < 1.3.0 | 只更新補丁版本,不更新次要版本 |
~1.0.0 | 1.0.0 <= version < 2.0.0 | 沒有指定次要版本,容許更新次要版本 |
=1.0.0 | 1.0.0 <= version | 小於等於當前版本 |
latest | 獲取最新版本 | 使用最新版本 |
這一篇提到了 yarn,後面咱們來看一下 yarn 和 npm 的區別。 前端開發並不難,難的是不能堅持下去,面對困難別退縮,滴水能夠穿石。關注小姐姐,一塊兒學一學。git