【转】包管理工具npm、yarn以及nvm简介

转载自:包管理工具npm、yarn以及nvm简介及简单使用


基本概念

在使用npm、yarn等包管理工具之前,我们首先了解一些基本的概念

模块(module)

通常以单个文件形式存在的功能片段,入口文件通常称之为入口模块或主模块

库(library,简称lib)

以一个或多个模块组成的完整功能块,为开发中某一方面的问题提供完整的解决方案

包(package)

包含元数据的库,这些元数据包括:名称、描述、git主页、许可证协议、作者、依赖等等

npm

npm 全称为 node package manager,即 node 包管理器,它运行在 node 环境中,让开发者可以用简单的方式完成包的查找、安装、更新、卸载、上传等操作。几乎可以这样认为,前端所有的包管理器都是基于 npm 的,目前,npm 即是一个包管理器,也是其他包管理的基石。

官网:https://www.npmjs.com/

这个网址非常常用,因为以后的常用插件都是在官网中查找,查看使用方法

yarn

yarn 是由Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具,它仍然使用 npm 的registry,不过提供了全新 CLI 来对包进行管理

yarn 官网:https://www.yarnpkg.com/zh-Hans/

在过去npm具有很多缺点,比如依赖目录嵌套太深遍历问题,npm是串行下载的下载速度慢等等问题,于是就有了yarn。

npm6 之后,可以说npm已经和yarn非常接近,甚至没有差距了。很多新的项目,又重新从yarn转回到npm。

cnpm

为解决国内用户连接npm registry缓慢的问题,淘宝搭建了自己的registry,即淘宝npm镜像源。

官网地址:https://npm.taobao.org/

但是现在并没有什么卵用了,因为npm已经支持修改registry了

nvm

nvm并非包管理器,它是用于管理多个node版本的工具。在实际的开发中,可能会出现多个项目分别使用的是不同的node版本,在这种场景下,管理不同的node版本就显得尤为重要。nvm就是用于切换版本的一个工具

下载和安装
最新版下载地址:https://github.com/coreybutler/nvm-windows/releases

下载nvm-setup.zip后,直接安装。以下命令判断是否安装成功

nvm -v

为了加快下载速度,建议设置淘宝镜像
node淘宝镜像:https://npm.taobao.org/mirrors/node/
npm淘宝镜像:https://npm.taobao.org/mirrors/npm/

nvm node_mirror https://npm.taobao.org/mirrors/node/
nvm npm_mirror https://npm.taobao.org/mirrors/npm/

发表评论