npmgaoxustudy v1.0.2
----------------------npm---------------------------------------------------------------------------------------------------------- 1. 简介
npm node package manage,node的包管理工具,nodejs安装包内置,附带一起安装了npm。 npm 本身是基于nodejs开发的软件。 nodejs 基于谷歌v8,用c++写的JavaScript运行环境,使JavaScript脱离浏览器运行,可以完成java等后端语言才能做的事情。 package.json 相当于pom。
npm远程库 npmjs.com 其他包管理工具: yarn、bower。 npm -v 版本
cnmp
和npm一样。国内用cnpm代替npm npm i -g cnpm --registry=https://registry.npm.taobao.org
package.json描述
描述项目的依赖包,描述项目的信息
name, 不允许大写存在,version,版本。这2属性必须存在
version 版本 description 描述 author 作者 repository 存放代码的地方 { "type" : "git" , "url" : "https://github.com/npm/npm.git" } keywords 关键字 scripts: 自定义脚本 脚本key:脚本 可&&组合脚本,npm run 脚本key,则会执行key对应的脚本
license: 默认MIT devDependencies: npm i 第三方库 -D,则会安装在这,开发依赖。 5.0.1 具体版本 ~5.0.1 最新第三位小版本 ^5.0.1 最新第二中版本 dependencies: npm i 第三方库 ,则会安装在这,生产依赖。 package.json和package-lock.json package-lock.json 锁定具体版本 package-lock.json与package.json一致,则以package-lock.json为准。 package-lock.json与package.json不一致,则以package.json为准,且把package.json同步到package-lock.json配置命令
npm config list 获取所有的配置项 npm config get 配置项|变量 查看配置项值|变量值 registry获取包下载地址、prefix获取包全局安装路径、cache获取包全局下载地址 npm config set 配置项|配置项 值 为配置项设置值,设置变量值 npm config delete 配置项|配置项 删除变量或者配置项 其中,配置都是存储在C:\Users\gaoxu.npmrc 文件中,以键值对的形式存储
常用命令
npm init 在当前目录下,初始化一个package.json文件 -y,则会直接使用默认值 npm root 查看项目依赖安装路径 npm root -g 查看全局的依赖安装类路径 npm list 列出来所有安装的包 -g 全局 npm i 从新安装package中的包 npm i 第三方库@版本 安装包,如果没有版本,则默认最新版本。重复安装,只会安装一个,不同版本,只会安装一个。 -g 全局安装 果没有package.json文,则自动生成一个 包@版本 指定版本 ^版本,大版本的最新版本,为1.xx.x,x为最新的。 ~版本,小版本的最新版本,为1.11.x,x为最新的。 npm update 包@版本 更新包为指定版本,可以指定更新为指定版本 npm view 包名 查看包在远程仓库中的所有版本 npm uninstall 包名 写在包 -g 则全局卸载 npm run 脚本 运行package.json中的脚本,脚本中的命令优先使用局部中的包,局部没有再使用全局 npm cache clean --force 清理安装包缓存,实际上删除全局缓存文件夹的_cache npm adduser // xy20539 12345679Gao. = npm login npm publish // 把自己的库发布到远程仓库,包名为package.json 的 name
npx
简介 npx是npm5.2之后发布的一个命令,在命令行执行本地已安装的依赖包命令,不用在scripts脚本写入命令 场景 本地安装了一个依赖包 想要在本地(当前目录)执行它时,什么都不做时是不能运行这个命令的 一般会使用几种方式来运行我们想要运行的命令: 1.使用package.json的scripts脚本,然后npm run 脚本 2.找到安装的包的bin路径下,在命令行中直接找到模块的二进制文件运行 3.全局安装模块 解决 有很多命令,我们只需要执行一次的,但是却要全局安装一次,实在不科学 使用npx,可以在不全局安装依赖包的情况下,运行命令,而且运行后不会污染全局环境 npx create-react-app my-react-app npx 将create-react-app下载到一个临时目录,使用以后再删除。 每次运行这个命令,都会重新下载依赖包,运行后删除。 npx的原理 就是在运行它时,执行下列流程: 1.去node_modules/.bin路径检查npx后的命令是否存在,找到之后执行; 2.找不到,就去环境变量$PATH里面,检查npx后的命令是否存在,找到之后执行; 3.还是找不到,自动下载一个临时的依赖包最新版本在一个临时目录,然后再运行命令,运行完之后删除,不污染全局环境。 命令 npx 依赖包命令
-----------------------------------------------------------------------------------------------------------yarn 1. 簡介
facebook出品的JavaScript包管理器,速度比npm快,yarn并行,npm按照队列顺序。 网络中断后,yarn会在网络恢复后,继续下载。
安裝
npm i -g yarn
简单使用
yarn -v yarn init 初始化一个包 package.json yarn 脚本 执行package.json中的脚本 yarn config list 列出yarn的配置信息,顺便把npm的配置信息输出 yarn config get 配置项 获取配置项
yarn config set 配置项 值 配置项有源、 yarn config set global-folder 路径 设置全局安装路径 D:\nodejs\yarn_node_modules
yarn config set cache-folder 路径 设置全局安装缓存路径 D:\nodejs\yarn_cache
yarn info 包名 查看包信息 yarn add 包 安装包,= npm i 包 --force 强制重新安装 yarn global add 包 全局安装包 yarn update 包 升级包到最新版本 yarn list 列出当前安装的软件包 yarn remove 包 卸载报 yarn cache clean 清除缓存
-----------------------------------------------------------------------------------------------------------nrm 1. 简介
npm的镜像源管理工具,有时候国外资源太慢,使用这个就可以快速地在 npm 源间切换
安装
npm i -g nrm
命令
nrm list 查看可选的源 nrm use 源 切换源 nrm add ,其中reigstry为源名,url为源的路径。 增加源 nrm del 删除对应的源 当前源