1.代码共享方案:
方案一:手动管理
- 程序员本地开发工具包,上传到
GitHub; - 其他程序员手动一个一个地下载引用。
方案一特点:操作复杂、使用者不易管理依赖包。
方案二:使用工具管理
- 程序员本地开发工具包,上传到特定位置;
- 其他程序员写一个配置文件,写入需要的包的名字和版本;
- 执行工具命令,可自动安装、升级、删除安装的依赖包。
方案二特点:操作简便、无需手动管理依赖包。
2.npm:Node包管理工具
1. 作用:npm属于node的包管理工具。
2. 使用:需要依赖Node,所以要先安装Node(nodejs.org/en/)
3. npm包存放位置:registry
4. 查看npm管理的包:www.npmjs.org/
5. npm的配置文件:package.json
6. 创建package.json文件:npm init
7. package.json中的常见属性:
name:项目名称
version:当前项目版本号
description:项目的描述信息
author:作者信息(发布时用)
license:开源协议(发布时用)
private:项目是否私有,true时不可发布
main:
scripts:一些脚本命令,当在命令行中输入npm run ...时,会执行scripts中属性名与...相同的命令
dependencies:开发环境和生产环境都需要的依赖
devDependencies:开发时需要用到的依赖
8. 依赖的版本管理:
遵从semver版本规范X.Y.Z(semver.org/lang/zh-CN/ )
X:主版本号
Y:次版本号
Z:修订号
^x.y.z:x保持不变,y和z安装最新版本
~x.y.z:x和y保持不变,z保持安装最新版本
9. 依赖安装:
npm install:安装配置文件中的所有依赖。
npm install "包名及版本号":安装指定的包。
(如:npm install webpack局部安装webpack;npm install webpack -g全局安装)。
全局安装与局部安装:
全局安装:将工具安装到电脑的一个文件夹中,并在电脑的环境变量中添加相应的变量。(一般是一些工具,开发的源代码不包含这些内容)
局部安装:将工具安装到当前项目的文件夹中。(一般是项目中需要用到的依赖的库等)
局部安装分为开发时依赖和生产时依赖:
开发时依赖安装:(以安装webpack为例)npm install webpack -D 或 npm install webpack --save-dev
开发和生产时依赖安装:(以安装webpack为例)npm install webpack
根据package.json安装依赖:npm install
11. npm install原理
12. package-lock.json:依赖包安装的真实版本
13. npm其他常用命令:
npm uninstall "包名": 卸载包
npm catch clear: 清除缓存
3.yarn工具:
为弥补npm的不足而产生,现在两者都能用。但是,不能混用!!!
4.cnpm:
与npm功能相同,但是,由于registry仓库在国外,国内下载包速度慢。
使用cnpm可将cnpm的包下载地址改为淘宝镜像,提高包的下载速度。
查看包下载地址:cnpm config get registry
修改包下载地址(使用淘宝镜像):cnpm config set registry registry.npm.taobao.org
5.npx:
使用在项目局部安装的工具(以webpack为例):
方法一:明确查找到node_module下的webpack,然后执行(./node_module/.bin/webpack --version)
方法二:配置package.json中的scripts
方法三:使用npx
npx原理:到当前目录下的node_module/.bin目录下查找相应的命令。