安装 node 的时候自动安装
node package manager:Node 包管理工具
可以通过 npm 安装说明已经上传到这个仓库里面了
npm 官网查看是否有发布:npmjs.org
name:项目的名称
version:项目版本
description:描述
author:作者
license:开源协议
private:true
script:配置脚本命令npm run xxx
start、test、stop、restart可以省略run
dependencies:开发和生产环境都需要依赖的包:npm i axios
devDependencies:开发依赖,有一些包在生成环境是不需要的,比如webpack、babel、vue-loader
这个时候通过npm install webpack --save-dev安装到devDependencies属性中
peerDependencies:对等依赖,你依赖的一个包,它必须是以另外一个宿主包为前提的
engines:指定 Node 和NPM 的版本号
browserslist:浏览器兼容情况
本地/局部安装:在哪个文件夹就安装到哪个文件夹里面,不会添加到环境变量里面
全局安装:npm i webpack -g
原理
卸载某个包:npm uninstall webpack
npm ininstall axios -D
强制重新build:npm rebuild
清除缓存:npm cache clean
早期的 npm 存在安装依赖速度缓慢、版本依赖混乱等问题
npm5 之后进行很多升级和改进
npm i yarn -g
初始化:yarn init
安装包:yarn add axios
与npm 区别
npm config get registry
npx是 npm5.2之后自带的一个命令
在安装项目之前,先创建package.json
npm i webpack@3.6.0 -g
使用 npx 直接(优先)在node_modules下面的bin文件中优先查找
局部命令的执行
performant 高性能的 npm
vue 源码已经开始使用 pnpm 了
使用的公司:Microsoft、ByteDance
依赖包将被存放在一个统一的位置
pnpm 创建非扁平的 node_modules目录873
安装npm install pnpm -g
当使用npm或yarn安装依赖包时,所有软件包都将被提升到node_modules的根目录下
a. 源码可以访问本不属于当前项目所设定的依赖包
通过硬链接和软连接的方式连接起来
整个结构嵌套的层级有点多,不会随便引入非自己安装的依赖pnpm的存储store
获取对应目录:pnpm store path
从store中删除当前未被引用的包来释放store的空间:pnpm store prune