包管理器
全称:Node Package Manager , Node的包管理器 ,NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题 。
npm使用
- 通过NPM可以对Node的包进行搜索、下载、安装、删除、上传
- npm常用指令;
- npm init:引导创建一个package.json文件
- npm help(npm -h) :查看npm帮助信息
- npm version (npm -v) : 查看npm版本;
- npm search:查找
- npm install (npm i):安装 默认在当前目录,如果没有node_modules 会创建文件夹;
- npm install module_name -S 或者--save 即 npm install module_name --save 写入dependencies
- npm install module_name -D 或者 —save-dev 即 npm install module_name --save-dev 写入devDependencies
- npm install module_name -g 全局安装(命令行使用)
- 指定版本安装模块 npm i module_name @1.0 通过 "@"符号指定;
- npm remove 或者 npm uninstall:删除
- npm root 查看当前包安装的路径 或者通过 npm root -g 来查看全局安装路径
nodejs里 有3种模块:
1.内置模块(装nodejs的时候自动安装的模块)
2.自定义模块(自己写的模块)
3.第三方模块(其他程序员写的模块)
使用第三方模块:需要通过nodejs里内置的一个工具:npm【nodepackagemanager】(包管理器)
npm是安装nodejs的时候自动安装:查看npm是否安装好,通过 npm-v 查看
安装第三方模块 可以在https://www.npmjs.com/查看第三方模块信息
npm里的安装
-搜索包 :https://www.npmjs.com/
-npm install 模块名
-简写 npm i 模块名
-安装模块前 需要初始化package.json文件,通过`npm init -y`
-npm 安装会安装在指令所在的目录【进入那个文件夹就在哪个文件夹中安装,安错就没有了】
npm在下载时遇到的几个包
-全局安装 和 局部安装
-默认是局部安装(命令行所在的目录)
-全局安装 : npm i 模块名 -g ; mac电脑 :需要 加 sudo npm i 模块名 -g
无所谓目录 ,会安装在 npm root -g 的目录 ;
-开发依赖 和 正式依赖
-开发依赖:只是在开发的时候使用 ,正式环境不需要使用的模块 加上--save-dev 修饰符
会自动写在package.json里的 devDependencies 里;
开发依赖 --save-dev 简写 是 -D
-正式依赖 :开发和上线都需要用到的模块依赖 加上 --save ;会自动在 package.json里的 dependencies 写入模块
正式依赖修饰符 --save 简写 -S 为默认的,可加可不加
安装后会自动生成
npm i 会查找命令所在目录的package.json文件 ,然后把devDependencies 和 dependencies里的内容
自动下载下来,在做项目时,由于node_module的文件太大,因此在上传或下载脚手架等时(从git或其他库)
都不会有node_module。而我们有需要应用到模块,由于package.json内会记录的有用到的模块,通过npm i
回车 会自动进行查找并把devDependencies 和 dependencies里的内容自动下载下来
【当拿到文件的时候,必须先npm i 以下】
卸载:npm uninstall 模块名 npm remove 模块名
查找模块: npm search 模块名 直接去npm官网查找
cnpm:chinanpm 中国的npm (了解);
它是淘宝对国外npm服务器的一个完整镜像版本,也就是淘宝NPM镜像
cnpm指令和npm一样,但是服务器在中国;是淘宝做的,
cnpm使用:
1.安装cnpm:npmicnpm-g
2.直接使用
修改npm的下载源地址:
开发中使用npm但是修改npm的下载源地址;
查看npm的下载源地址;npmconfiggetregistry
https://registry.npmmirror.com/国内镜像地址
https://registry.npmjs.org/ npm的官方镜像地址;
修改npm的下载源地址
设置npm为国内镜像 npmconfigsetregistry=https://registry.npmmirror.com
设置npm为官方镜像地址npmconfigsetregistry=https://registry.npmjs.org/
有些npm指令只能在官方镜像地址下使用比如:npm search模块
如果你要发布自己的npm包模块 ,需要把你的源地址改成官方
注意:npm i 默认下载的是最新版本,下载指定版本的模块:npm i express@3.0.0
npm i 模块@版本号
另外,npm可以同时下载多个模块,模块之间用空格隔开 例如:npm i express cookie-parser
package.json 文件
name:包名
version:版本
main:入口程序
scripts:执行脚本
dependencies:运行依赖
devDependencies:开发依赖
dependencies与devDependencies有什么区别?
devDependencies 里面的插件只用于开发环境,不用于生产环境
dependencies 是需要发布到生产环境的
npm的发布【发布自己的包】
1.注册账号和密码 https://www.npmjs.com/账号密码记下来
2.检查你的源地址是官方的地址 npmconfiggetregistry
3.添加你的用户名和密码 [ npmadduser ]输入刚刚注册好的用户名和密码 和git差不多
4.写好自己的包推送到npm服务器,注意包的名称不能和其他人发布的现有的模块名重复了;
npmpublish 将包推上去
yarn的使用 【包管理工具】
和npm的作用一样,使用一个就可以
yarn:包管理工具,Facebook出的包管理工具
一、安装yarn:全局安装npm i yarn-g
二、查看yarn是否安装好:yarn--version如果有版本号那么就装好了;
三、yarn常用指令;
yarn add模块名--类似-->npmi模块名
yarn init创建package.json文件--类似-->npminit;
全局安装:yarng lobal add模块名--类似-->npmi模块名-g
yarn的全局安装路径和npm不同;
查看yarn的全局目录yarn global dir
局部安装:默认就是局部安装;
安装正式依赖:默认就是正式依赖 dependencies
安装开发依赖:yarnadd模块名--dev;
等同于devDependencies---->npmi模块名--save-dev
安装所有的模块:yarn---->npmi
国内也有cyarn,但不常用
解决yarn指令vscode命令行报红问题
vscode终端禁止使用的情况处理
- win 静止脚本运行错误
- 1.以管理员身份 打开powershell 命令行
- 2.set-executionpolicy remotesigned 输入y 确定
- 3.重启vscode包括小垃圾桶 即可完成