目录

  • 一. 简介
  • 二. 作用
    • 1. 快速构建nodejs工程
    • 2. 快速安装和依赖第三方模块
  • 三. npm镜像加速
  • 四. 其他命令

一. 简介

官方网站: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

然后就会生成package.json文件
npm 快速入门-编程知识网

{"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文件,用于帮助锁定安装包的版本

npm 快速入门-编程知识网


3. 模块和package.json的关系

通过npn install xxx安装的依赖都会记录在package.json文件中,依赖包会被添加到dependencies节点下,类似maven中的
npm 快速入门-编程知识网

作用:可用于复用,当创建一个新的工程时,可以直接拷贝以前的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 镜像 http://npm.taobao.org/

    npm 快速入门-编程知识网

命令如下:

# 经过下面的配置,以后所有的 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 为该命令的缩写