什麼是NPM
npm(node package manager)node的包管理工具
在 GitHub 還沒有興起的年代,前端是通過網址來共享程式碼,舉例來說:
如果我們在開發過程中想使用 vue ,那麼是不是要引入 vue ,你可能會下載這個 vue.js 檔案在HTML程式碼中:
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script>
當一個網站依賴的程式碼越來越多,程式設計師發現這是一件很麻煩的事情:
去 jQuery 官網下載 jQuery
去 BootStrap 官網下載 BootStrap
去 Underscore 官網下載 Underscore
……
有些程式設計師就受不鳥了,npm 給出一個解決方案:用一個工具把這些程式碼集中到一起來管理吧!
NPM 的思路大概是這樣的:
- 買個伺服器作為程式碼倉庫(registry),在裡面放所有需要被共享的程式碼
- 發郵件通知 jQuery、Bootstrap、Underscore 作者使用 npm publish 把程式碼提交到 registry
上,分別取名 jquery、bootstrap 和 underscore(注意大小寫) - 社群裡的其他人如果想使用這些程式碼,就把 jquery、bootstrap 和 underscore 寫到 package.json
裡,然後執行 npm install ,npm 就會幫他們下載程式碼
$ npm install jquery
- 下載完的程式碼出現在 node_modules 目錄裡,可以隨意使用了。
這些可以被使用的程式碼被叫做「包」(package),這就是 NPM 名字的由來:Node Package(包) Manager(管理器)。