Node.js包管理工具学习笔记

目录

包是什么

包管理工具

常用的包管理工具

npm

npm安装

npm的基本使用

初始化

初始化注意事项

搜索包

下载安装包

requiire导包基本流程

开发依赖与生产依赖

开发环境

生产环境

npm全局安装

npm安装包的全部依赖

npm安装指定版本和删除包

安装

删除

npm配置命令别名

cnpm

安装

操作命令

npm配置淘宝镜像

直接配置

工具配置

yarn

特点

安装

常用命令

管理发布包

更新包

删除

nvm

简介

下载安装

常用命令


包是什么

【包】package:代表了一组特定功能的代码集合,很多编程语言都有包管理工具。

包管理工具

管理【包】的应用软件,可以对【包】进行下载、安装、更新、卸载等操作,借助包管理工具,可以快速开发项目。

常用的包管理工具

常见前端包管理工具:npm、yarn、cnpm

npm

npm即Node Package Manager,译为【Node的包管理工具】,npm是Node.js官方内置的包管理工具。

npm安装

Node.js在安装时会自动安装npm

npm的基本使用

初始化

创建一个空目录,然后以此目录为工作目录启动命令行工具,执行npm init,npm init命令的作用是将文件夹初始化为一个【包】,交互式创建package,json文件,package.json是包的配置文件,每个包都必须要有package.json。

package.json内容如下:

0cf1d23d560b4a8e86edcca170e91b64.png

(一)直接输出cmd

d4e0749f1d8042319ad7e43cd9047e2a.png

(二)再输入npm init

c0942e81ef834e7f877f860d0b9d8c0f.png

初始化注意事项

1.package name(包名)不能使用中文,大写,默认值是文件夹的名称,所以文件夹名称也必要使用中文和大写。

2.version(版本号)要求x.x.x的形式定义,x必须是数字,默认1.0.0

3.package.json可以手动创建和修改

4.使用npm init -y 或者npm init  --yes可以快速创建package.json

搜索包

1.命令行:【npm s/search 关键字】

2.网站搜索:https://www.npmjs.com/

下载安装包

通过npm install 和 npm i 命令安装包,示例:

(一)npm install <包名>

(二)npm i <包名>

运行后文件夹会增加两个资源: 

1.node_modules:文件夹存放下载的包

2.package-lock.json:包的锁文件,用来锁定包的版本

创建包A,A中安装了包的名字是B,那么B是A 的一个依赖包,也说A依赖B。 

requiire导包基本流程

(一)在当前文件夹下node_modules中寻找同名的文件夹

(二)在上级目录中下的node_modules中寻找同名的文件夹,直到找到磁盘根目录

开发依赖与生产依赖

生产依赖npm i  -S/--save  uniq

-S等效于--save,-S是默认选项;包信息保存在package.json中的depemdencies属性

开发依赖npm i  -D/--save-dev  uniq-D等效于--save-dev;包信息保存在package.json中,devDependevcies属性

开发环境

程序员专门用来写代码的环境,一般是指程序员的电脑,开发环境的项目一般只能程序员自己访问

生产环境

项目代码正式运行的环境,一般指正式的服务器电脑,生产环境的项目一般每个客户都可以访问

npm全局安装

可以执行npm i -g <包名>全局安装,全局安装的命令不受工作目录位置的影响,可以通过npm root -g查看全局安装包的位置,不是所有的包都适合全局安装,只有全局类的工具才适合,可以通过查看包的官方文档来确定安装方式。

npm安装包的全部依赖

在项目协作中有一个常用的命令就是npm i,通过该命令可以依据package.json和package-lock.json的依赖声明安装项目依赖。

npm i

npm install

node_modules文件夹大多数情况下都不会存入版本库

npm安装指定版本和删除包

安装

npm i <包名@版本号>

删除

npm remove <包名>

npm  r  <包名>

全局删除:npm remove -g <包名>

npm配置命令别名

配置package.json中的script属性:

3f9a5d16d07a43e4b4bd2820ab01c5c4.png

配置完成之后,可以使用别名执行命令

npm run server(此处未配,run不可省)

npm run start(run可以省略)

补充说明:npm start是项目中常用的一个命令,一般用来启动命令,npm run有自动向上级目录寻找到的特性,跟requrire函数一样

cnpm

cnpm是一个淘宝构建的npmjs.com的完整镜像,即淘宝镜像。网站:https://npmmirror.com/,cnpm服务部署在国内阿里云服务器上,可以提高包的下载速度。官方也提供了一个全局工具包cnpm,操作命令与npm大体一样。

安装

通过npm安装cnpm工具

npm install -g cnpm --registry=https://registry.npmmirror.com

操作命令

初始化cnpm init 
安装包cnpm   i  uniq
安装项目依赖cnpm   i
删除cnpm   r  uniq

npm配置淘宝镜像

直接配置

npm config set registry https://registry.npmnirrir.com/

工具配置

使用nrm配置npm镜像地址:npm  registry  manager

1.安装nrm: npm  i  -g  nrm

2.修改镜像:nrm  use  taobao

3.检查是否配置成功:npm config  list

49450cc642ff482e8e2fc4936bc036b5.png

检查registry地址是否为https://registry.npmmirror.com/,如果是,则代表配置成功。

通过nrm ls命令可以查看地址

927d695b031a4ad6977b25d83dfc1c8d.png

yarn

官网:https://yarnpkg.com/   

锁文件为yarn.lock

特点

速度快:yarn缓存了每个下载过的包,所以再次使用时候无需下载,同时利用并行下载以最大化资源利用率。

安全:在执行代码之前,yarn会通过算法校验每个安装包的完整性。

可靠:使用详细、简洁的锁文件格式和明确的安装算法,yarn能够保证在不同系统上无差别工作。

安装

可以使用npm安装yarn:  npm   i  -g  yarn

常用命令

初始化yarn   init    /   yarn   init  -y
安装包

yarn  add   uniq  生产依赖

yarn  add  less  --dev  开发依赖

yarn  global  add  nodemon   全局安装

删除包

yarn   remove  uniq   删除项目依赖包

yarn   global   remove   nodemon   全局删除

安装项目依赖yarn 
运行命令别名yarn<别名>      不需要添加run

管理发布包

1.创建文件夹,并创建index.js,在文件中声明函数,使用module.exports暴露

2.npm初始化工具包,package.json填写包的信息

3.注https://www.npmjs.com/signup)

4.激活账号

5.修改为官方镜像

6.命令行下npm  login 填写相关用户信息

7.命令行下npm  publish提交包

更新包

1.更新包中代码

2.测试代码

3.修改package.json版本号

4.发布更新  npm  publish

删除

执行命令:npm  unpublish

nvm

简介

nvm全称Node Version Manager 用来管理node版本的工具,方便切换不同版本的Node.js。

下载安装

下载地址:https://github.com/coreybutler/nvm-windows/releases,选择nvm-setup.exe下载即可

常用命令

nvm   list   available显示所有下载的Node.js版本
nvm   list显示已安装的版本
nvm   install   latest安装最新版本
nvm   install   18.11.2安装18.11.2版本
nvm   uninstall   18.11.2卸载某个版本
nvm   use   16.3.2切换版本
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值