初識npm

初識npm

什麼是npm

npm(NodeJS Package Manager),即NodeJS包管理工具。npm是按照NodeJS自帶的包管理工具。按照我個人的理解npm和NodeJS的關係相當於Maven之於Java。

package.json和package-lock.json文件

package.json的作用是記錄項目依賴的包
package-lock.json的作用是記錄node_modules目錄下安裝的包信息(版本、下載地址),另一個作用是鎖定項目依賴的包版本,方式包升級依賴的包也升級。

使用npm init命令會在執行命令所在目錄創建一個package.json文件。使用npm install命令按照指定的依賴包,會自動生成package-lock.json和node_modules目錄。
一般情況我們項目值需要修改package.json即可,package-lock.json由npm自動維護。
package.json內容如下:

{
  "name": "npmdemo",
  "version": "1.0.0",
  "description": "npm demo",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "zhangxy",
  "license": "ISC",
  "devDependencies": {
    "webpack": "^4.40.2"
  },
  "dependencies": {
	"jquery": "^3.4.1"
  }
}

name - 包名。
version - 包的版本號。
description - 包的描述。
homepage - 包的官網 url 。
author - 包的作者姓名。
contributors - 包的其他貢獻者姓名。
devDependencies:開發和測試環境依賴的包
dependencies:生產環境依賴的包
repository - 包代碼存放的地方的類型,可以是 git 或 svn,git 可在 Github 上。
main - main 字段指定了程序的主入口文件,require(‘moduleName’) 就會加載這個文件。這個字段的默認值是模塊根目錄下面的 index.js。
scripts:執行腳本的別名(npm 命令別名)。
keywords - 關鍵字
license:ISC開源證書

本地按照和全局按照

本地安裝是指項目範圍內安裝,只有項目內才能使用安裝的包,全局安裝是所有項目都能使用全局安裝的包。
全局安裝需要在npm命令之後加上-g(例如npm install jquery -g),否則爲本地安裝。
本地安裝的包放在執行命令所在目錄的node_modules目錄中,全局按一般情況下是放在NodeJS安裝目錄下的node_modules目錄中。可通過npm config list來查看全局按照目錄。
也可以通過修改NodeJS安裝目錄\node_modules\npm\npmrc文件來指定全局安裝目錄。或者通過npm config set prefix "you path"來配置全局安裝目錄。

npm常用命令

執行命令所在目錄生成package.json文件
npm init
跳過嚮導,安裝默認信息生產package.json文件
npm init --yesnpm init --y

下載package.json文件中聲明的依賴。導入一個項目都本地,就可以使用此命令下載package.json中所有的依賴。
npm install

安裝指定的包並添加到生產依賴中(即添加到package.json文件中的dependencies節點下)
npm install "you package name"npm install --save "you package name"

安裝指定的包並添加到開發和測試依賴中(即添加到package.json文件中的devDependencies節點下)
npm install --save-dev "you package name"

刪除包並移除從生產依賴中
npm uninstall "you package name"

刪除包並移除從開發和測試依賴中
npm uninstall --save-dev "you package name"

更新包
npm update "you package name"

更新npm版本
npm install npm --global

設置npm遠程倉庫的地址爲淘寶鏡像(國內的下載速度會快一些)
npm install -g cnpm --registry=https://registry.npm.taobao.org

查看npm配置信息
npm config list

資料:
https://www.runoob.com/nodejs/nodejs-npm.html
https://www.cnblogs.com/Grani/p/9557188.html
https://www.kancloud.cn/shellway/npm-doc/199983

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