Node.js包管理工具npm的基本使用

npm的基本概念

  1. npm 是node的包管理工具
  2. 它是世界上最大的軟件註冊表,每星期大約有 30 億次的下載量,包含超過 600000 個 包(package) (即,代碼模塊)。
  3. 來自各大洲的開源軟件開發者使用 npm 互相分享和借鑑。包的結構使您能夠輕鬆跟蹤依賴項和版本。
  • 作用:通過npm來快速安裝開發中使用的包
  • npm不需要安裝,只要安裝了node,就自帶了npm

npm基本使用

初始化包

npm init          手動初始化一個包 注意:包的名字不能爲英文

npm init -g          自動初始化一個包

初始化後會創建一個package.json文件,這個文件主要是對包的描述

安裝包

npm install 包名          安裝指定的包名的最新版本到項目中

npm install 包名@版本號          安裝指定包的指定版本

npm i 包名          簡寫

卸載包

npm uninstall 包名          卸載已經安裝的包

清除緩存

npm cache clean -f          如果npm安裝失敗了,可以用這個命令來清除緩存

package.json文件

package.json文件,包(項目)描述文件,用來管理組織一個包(項目),它是一個純JSON格式的。

  • 如何生成:npm init或者npm init -y
  • 作用
    • 描述當前項目(包)的信息,描述當前包(項目)的依賴項
    • 一個項目的node_modules目錄(下載的包都會在這個目錄下)通常都會很大,不用拷貝node_modules目錄,可以通過package.json文件配合npm install直接安裝項目所有的依賴項
  • 描述內容
{
  "name": "03-npm",    //描述了包的名字,不能有中文
  "version": "1.0.0",  //描述了包的的版本信息, x.y.z  如果只是修復bug,需要更新Z位。如果是新增了功能,但是向下兼容,需要更新Y位。如果有大變動,向下不兼容,需要更新X位。
  "description": "",   //包的描述信息
  "main": "index.js",  //入口文件(模塊化加載規則的時候詳細的講)
  "scripts": {         //配置一些腳本,在vue的時候會用到,現在體會不到
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],      //關鍵字(方便搜索)
  "author": "",        //作者的信息
  "license": "ISC",    //許可證,開源協議
  "dependencies": {    //重要,項目的依賴, 方便代碼的共享  通過 npm install可以直接安裝所有的依賴項
    "bootstrap": "^3.3.7",
    "jquery": "^3.3.1"
  }
}

注意:一個合法的package.json,必須要有name和version兩個屬性

本地安裝和全局安裝

有兩種方式用來安裝 npm 包:本地安裝和全局安裝。選用哪種方式來安裝,取決於你如何使用這個包。

  • 全局安裝:如果你想將其作爲一個命令行工具,那麼你應該將其安裝到全局。這種安裝方式後可以讓你在任何目錄下使用這個命令。比如less命令,webpack命令,hcc-md命令 。

  • 本地安裝:如果你自己的模塊依賴於某個包,並通過 Node.js 的 require 加載,那麼你應該選擇本地安裝,這種方式也是 npm install 命令的默認行爲。

全局安裝,會把npm包安裝到C:\Username\AppData\Roaming\npm目錄下(可以通過npm root -g命令查看安裝位置),作爲命令行工具使用
npm install -g 包名;

本地安裝,會把npm包安裝到當前項目的node_modules文件中,作爲項目的依賴
npm install 包名;

常見的命令行工具

nrm 設置鏡像地址

  • 作用:npm下載會很慢,因爲npm默認從國外下載資源,可以修改npm鏡像源地址

在這裏插入圖片描述
nodemon 自動重啓

nodemon 自動重啓

在編寫調試Node.js項目,修改代碼後,需要頻繁的手動close掉,然後再重新啓動,非常繁瑣。

  • 作用:監視到js文件修改後,自動重啓node程序

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章