目录
一. 简介
官方网站:https://www.npmjs.com/
NPM
全称Node Package Manager
,是Node.js包管理工具,是全球最大的模块生态系统,里面所有的模块都是开源免费的;也是Node.js的包管理工具,相当于java的Maven 。
二. 作用
1. 快速构建nodejs工程
在终端输入npm init
命令进行相应配置即可快速构建一个nodejs
工程
# npm init
PS D:\学习\VS Code Project\npm> npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.See `npm help init` for definitive documentation on these fields
and exactly what they do.Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.Press ^C at any time to quit.
package name: (npm)
version: (1.0.0)
description: fisrt nodejs project
entry point: (index.js)
test command:
git repository:
keywords:
author: BaretH
license: (ISC)
About to write to D:\学习\VS Code Project\npm\package.json:{"name": "npm","version": "1.0.0","description": "fisrt nodejs project","main": "index.js","scripts": {"test": "echo \"Error: no test specified\" && exit 1"},"author": "BaretH","license": "ISC"
}Is this OK? (yes) y
{"name": "npm", //工程名"version": "1.0.0", //版本"description": "fisrt nodejs project", //工程描述"main": "index.js", //入口js文件"scripts": { //运行脚本"test": "echo \"Error: no test specified\" && exit 1"},"author": "BaretH", //开发者"license": "ISC" //授权协议
}
这就类似于maven
项目中的pom.xml
文件,管理项目各种依赖以及项目的基本信息
2. 快速安装和依赖第三方模块
1. 快速安装第三方模块依赖
使用 npm install 安装依赖包的最新版
npm install mysql
npm i redis
2. 安装的模块存放位置
安装的模块存放于项目的
node_modules
目录中,同时会自动在项目目录下添加package-lock.json
文件,用于帮助锁定安装包的版本
3. 模块和package.json
的关系
通过npn install xxx
安装的依赖都会记录在package.json
文件中,依赖包会被添加到dependencies节点下,类似maven中的
作用:可用于复用,当创建一个新的工程时,可以直接拷贝以前的package.json
文件,然后在该工程目录下执行npm install
命令,就可以把package.json
中所依赖的模块全部自动下载下来;这样就可以避免重复下载模块,很方便的去集成第三方模块
4. 安装的模块如何使用
创建操作的.js
文件,导入按照官方文档即可使用
//导入模块redis
const redis = require("redis");
//导入模块mysql
const mysql = require("mysql");
5. 安装模块很慢怎么办
npm install cnpm -g --registry=https://registry.npm.taobao.org
6. 如何运行
# .js可以省去,终止用ctrl+c
node xxx.js
7. 如何下载多个模块,下载时如何指定版本号
#一次下载多个模块
npm install mysql redis vue jquery#下载指定特定的版本(具体的版本号查看官网),默认为最新的
npm install jquery@2.1.x
三. npm镜像加速
NPM官方的管理的包都是从 http://npmjs.com下载的,但是这个网站在国内速度很慢
命令如下:
# 经过下面的配置,以后所有的 npm install 都会经过淘宝的镜像地址下载
npm config set registry https://registry.npm.taobao.org # 查看npm配置信息
npm config list
四. 其他命令
#更新包(更新到最新版本)
npm update 包名#全局更新
npm update -g 包名#卸载包
npm uninstall 包名#全局卸载
npm uninstall -g 包名
npm命令解释:
npm install moduleName
:安装模块到项目目录下npm install -g moduleName
:-g 的意思是将模块安装到全局,具体安装到磁盘哪个位置,要看 npm config prefix 的位置npm install -save moduleName
:–save 的意思是将模块安装到项目目录下,并在 package文件的 dependencies 节点写入依赖,-S
为该命令的缩写npm install -save-dev moduleName
:–save-dev 的意思是将模块安装到项目目录下,并在 package 文件的 devDependencies 节点写入依赖,-D
为该命令的缩写