npm与包及npm包下载速度慢问题的解决

npm安装指定版本的包

默认情况下,使用npm install命令安装包的时候,会自动安装最新版本的包,如果需要安装指定版本的包,可以在包名之后,通过@符号指定具体的版本。
在这里插入图片描述

包管理配置文件package.json

运行下面这行命令,可以快速创建package.json这个包管理配置文件

npm init -y

注意,上述命令只能在英文的目录下成功运行! 因此项目文件夹的名称一定要使用英文命名,不要使用中文,不能出现空格。
在这里插入图片描述

运行以下命令可以卸载已安装的包

npm uninstall 包名

在这里插入图片描述
如果某些包只在项目开发阶段会用到,在项目上线后不会用到,则建议把这些包记录到devDependencies节点中,如果某些包在开发和项目上线之后都需要用到,则建议把这些包记录到dependencies节点中。

那些安装好的包都保存在node_modules目录中

运行下面这行命令可以将这些包记录到devDependencies节点中:

npm i 包名 -D

在这里插入图片描述

解决下包速度慢的问题

另外为了解决国内下载npm包速度慢的问题,淘宝在国内搭建了一个服务器,专门把国外官方服务器上的包同步到国内的服务器,然后在国内提供下包的服务,从而极大地提高了包的下载速度

镜像:是一种文件的存储形式,一个磁盘上的数据在另外一个磁盘上存在一个完全相同的副本即为镜像
在这里插入图片描述

切换npm下包镜像源

在终端中运行下面这行命令

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

在这里插入图片描述
为了更方便的切换下镜像源,我们可以安装nrm这个小工具,利用nrm提供的终端命令,可以快速查看和切换下包的镜像源

npm i nrm -g

nrm ls

nrm use taobao

在这里插入图片描述

npm安装全局包

在执行 npm install 命令的时候 如果提供了 -g参数,则会把包安装为全局包

注意

  • 只有工具性质的包,才有安装全局的必要性
  • 可以参考官方提供的说明,判断某个包是否需要全局安装

在这里插入图片描述

规范的包结构

有关包结构必须遵循的格式有很多,其中最重要的三条如下:

  • 包必须以单独的目录而存在
  • 包的顶级目录下要必须包含package.json这个包管理配置文件
  • package.json中必须包含name、version、main这三个属性,分别代表包的名字、版本号、包的入口

关于更多包所遵循的格式和约束,可以参考如下的网址:
https://yarnpkg.com/zh-Hans/docs/package.json
在这里插入图片描述

开发属于自己的包

新建一个文件夹,作为包的根目录,在根文件夹下新建如下三个文件:

  • package.json(包管理配置文件)
  • index.js(包的入口文件)
  • README.md(包的说明文档)

在这里插入图片描述
初始化的package.json文件中内容结构:
在这里插入图片描述
在index.js文件下引入了另外两个js模块,想让这两个模块在index.js文件中都暴露出去:

module.exports = {
	...date,
	...escape
}

在这里插入图片描述

发布自己的npm包

访问下面的网址,注册自己的npm账号:
https://www.npmjs.com/
在这里插入图片描述
账号注册完成后,可以在终端执行

npm login

然后依次输入用户名、账号和密码、邮箱后,即可登陆成功
注意在运行 npm login命令时 一定确保下包的服务器地址为npm官方地址,否则会导致发布包的失败
在这里插入图片描述
将终端切换到包的根目录之后 ,运行:

npm publish

就可以将包发布在npm上,切记包不能同名。
在这里插入图片描述

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值