NodeJS 学习笔记(四)npm | 包

Node.js中的第三方模块,又叫做

包是由第三方个人或团队开发出来的,免费供所有人使用。

为什么需要包

内置模块仅提供了一些底层的API,导致在基于内置模块进行项目开发时,效率很低。
包是基于内置模块封装出来的,提供了更高级、更方便的API,极大的提高了开发效率
包和内置模块之间的关系,类似于jQuery和浏览器内置API之间的关系。

从哪里下载包

全球最大的包共享平台link:http://www.npmjs.com/

如何下载包:
link:https://registry.npmjs.org

npm i moment

初次装包后多了哪些文件

初次装包之后在项目文件夹下多了一个node_modules的文件夹和package-lock.json的配置文件
node_modules的文件夹用来存放所有已安装到项目中的包。require()导入第三方包时,就是从这个目录中查找并加载包
package-lock.json配置文件用来记录node_modules目录下的每一个包的下载信息,包括包的名字、版本号、下载地址等。
这些都由npm包管理工具进行维护

安装指定版本的包

npm i moment@2.22.2

包的语义化版本规范

包的版本号是以‘点分十进制’形式进行定义的,总共有三位数字,例如2.24.0,其中每一位数字所代表的含义如下:
第一位数字:大版本(底层)
第二位数字:功能版本
第三位数字:Bug修复版本
只要前面的版本号增长了,则后面的版本号归零

包管理配置文件 package.json

放在项目根目录中,用来记录与项目有关的配置信息

项目名称 版本号 描述
项目中用了那些包
哪些包只在开发期间用到
哪些包在开发和部署时都需要用到

多人协作的问题
第三方包的体积过大,不方便团队成员之间共享项目源代码
解决方案:共享时剔除node_modules

如何记录项目中安装了哪些包
通过package.json
注意:在项目开发中,一定要把node_modules文件夹,添加到.gitignore忽略文件中
快速创建package.json

在执行命令所处的目录中,快速新建package.json文件
在新建项目时要做的第一件事
只能在英文目录下成功执行
package.json不需要手动更改
npm init -y

dependencies节点

当运行装包命令之后生成,记录所装包的名称和版本号

一次性安装所有的包

当我们拿到了一个剔除了node_modules的项目之后,需要先把所有的包下载到项目中,才能将项目运行起来。
通过运行npm i读取package.json中的dependencies节点,一次性安装所有的依赖包

卸载包
npm uninstall,package.json中的dependencies节点也会被移除

devDependencies节点
如果某些包只在项目开发阶段会用到,在项目上线后不会用到,则建议把这些包记录到devDependencies节点中

安装指定包,并记录到devDependencies节点中
npm i 包名 -D

解决下包速度慢的问题

在使用npm下包的时候,默认从国外的服务器进行下载,此时,网络数据的传输需要经过漫长的海底光缆,因此下包速度会很慢。
淘宝NPM镜像服务器:淘宝在国内搭建了一个服务器,专门把国外官方服务器上的包同步到国内的服务器,然后在国内提供下包的服务。从而极大的提高了下包的速度。
1.每隔一段时间,自动把npm官方服务器的包同步到国内
2.对国内用户提供下包服务

切换npm的下包镜像源
查看当前的镜像源
npm config get registry
切换为淘宝镜像源
npm config set registry=https://registry.npm.taobao.org/
检查是否安装成功
npm config get registry

nrm快速切换工具
npm i nrm -g
nrm ls
nrm use taobao

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值