npm、package.json的理解和學習
npm 是一個包管理器,它讓 JavaScript 開發者分享、複用程式碼更方便(有點 maven 的感覺哈)。
在程式開發中我們常常需要依賴別人提供的框架,寫 JS 也不例外。這些可以重複的框架程式碼被稱作包(package)或者模組(module),一個包可以是一個資料夾裡放著幾個檔案,同時有一個叫做 package.json 的檔案。
一個網站裡通常有幾十甚至上百個 package,分散在各處,通常會將這些包按照各自的功能進行劃分(類似我們安卓開發中的劃分子模組),但是如果重複造一些輪子,不如上傳到一個公共平臺,讓更多的人一起使用、參與這個特定功能的模組。
而 npm 的作用就是讓我們釋出、下載一些 JS 輪子更加方便。
我們可以去官方網站 https://www.npmjs.com/ 瀏覽、搜尋想要的輪子,也可以直接在命令列中 search 一下意中輪。
一、初步
1. package.json檔案可以手工編寫,也可以使用npm init命令自動生成。
注意:npm init 時,使用者需回答一些問題,然後在當前目錄生成一個基本的package.json檔案。所有問題之中,只有專案名稱(name)和專案版本(version)是必填的,其他都是選填的。
二、進一步
欄位參考網站:http://www.mujiang.info/translation/npmjs/files/package.json.html
下面是最簡單的的一個package.json 檔案(只有兩個資料,專案名稱和專案版本,他們都是必須的,如果沒有就無法install)
指定了執行指令碼命令的npm命令列縮寫,比如start指定了執行npm run start時,所要執行的命令。
1.scripts
下面的設定指定了npm run dev、npm run bulid、npm run unit、npm run test、npm run lint時,所要執行的命令。
在npm run dev啟動了webpack-dev-server後,編譯後的檔案並沒有輸出到webpack.config.js中配置的output輸出目標資料夾中,而是將實時編譯後的檔案儲存在記憶體中。
webpack-dev-server //啟動webpack-dev-server
--progress --colors //打包進行顯示顏色
--hot //開啟模組熱修復功能
--content-base ./dist //設定webpack-dev-server執行的根目錄是 ./dist
--inline //使用inline的方式進行頁面自動重新整理
--quiet //控制檯中不輸出打包資訊
--compress //開啟gzip壓縮
2.dependencies和devDependencies
兩項,分別指定了專案執行所依賴的模組、專案開發所需要的模組。它們都指向一個物件,該物件的各個成員,分別由模組名和對應的版本要去組成,表示依賴的模組及其版本範圍3 dependencies,devDependencies
--save引數表示將該模組寫入dependencies屬性,
--save-dev表示將該模組寫入devDependencies屬性。
3、config欄位
config欄位用於向環境變數輸出值。
4.engines 欄位
指明瞭該專案所需要的node.js版本
npm清除快取和檢視安裝包版本網站:
清除快取:https://blog.csdn.net/D_claus/article/details/84067222
檢視安裝包版本:https://blog.csdn.net/D_claus/article/details/84066231
本文參考網站:https://www.cnblogs.com/whkl-m/p/6617540.html
如有侵權,聯絡本人,刪除。