npm教程
npm -l 查看所有命令
一、配置
$ npm config
查看所有配置
列表形式:$ npm config list -l
json格式:$ npm config list --json
查看key
$ npm config get <key>
设置key
单独设置:$ npm config set <key>
整体设置:$ npm config edit
则会打开该文件,进入编辑模式(推荐采用这种 √
)
$ npm config edit
但是不能直接设置其值,底下展示的是默认值且其;
开头的是注释。
应该:prefixD:\Node\node_global=
cache=D:\Node\node_cache
cacheD:\Node\node_cache=
prefix=d:\Node\node_global
prefixD:Node\node_global=
init-author-name=在这里写<key>=<value>
init-author-email=zwyellin@163.com
init-version=1.2.0
;这个文件里面,;
开头的是行是被注释了的。常见配置
npm config set prefix 全局模块所在的路径
设置全局模块安装路径
eg:npm config set prefix D:\Program\node\node_global
说明:如果要在CMD中使用该命令,还要配置path路径。
eg:D:\Program\node\node_global
所以,CMD中能使用对应包命令。
npm config set cache 缓存cache的路径
设置全局模块cache缓存路径
eg:npm config set cache D:\Program\node\node_cache
二、init初始化
$ npm init
用来初始化生成一个新的 package.json 文件(用于定义包的属性)
它会向用户提问一系列问题,如果你觉得不用修改默认配置,一路回车就可以了
$ npm init -y
如果使用了-f(代表force)、-y(代表yes),则跳过提问阶段
,直接生成一个新的 package.json 文件
则其值为配置的默认值
,如init-author-name,init-author-email,init-version等常规信息
name
- 包名。
version
- 包的版本号。
description
- 包的描述。
homepage
- 包的官网 url 。
bugs
:项目的issue跟踪页面或这报告issue的email地址。这对使用这个包遇到问题的用户会有帮助
dependencies
字段指定了项目运行所依赖的模块,devDependencies
指定项目开发所需要的模块(版本号:~:表示>=;^:表示<;latest:表示最新)
author
- 包的作者姓名。
contributors
- 包的其他贡献者姓名。
private: true
防止别人意外的发布。
repository
- 包代码存放的地方的类型,可以是 git 或 svn,git 可在 Github 上。
keywords
- 关键字
其它配置
main
字段指定了程序的主入口文件,require('moduleName') 就会加载这个文件。这个字段的默认值是模块根目录下面的 index.js。
man
用来指定当前模块的man文档的位置
style
指定供浏览器使用时,样式文件所在的位置
命令相关
scripts
指定了运行脚本命令的npm命令行缩写,npm run 脚本
即可
bin
用来指定命令行的可执行文件的位置
config
字段用于添加命令行的环境变量
运行环境
browser
指定该模板供浏览器使用的版本
engines
字段指明了该模块运行的平台,比如 Node 的某个版本或者浏览器或NPM
二、install下载包
安装某个包
本地安装:
$ npm install <packageName>
全局安装:$ npm install -g <packageName>
强制重新安装:$ npm install <packageName> -f
-f(代表force)
特定版本包:$ npm install <packageName>@3.8
默认安装的是最新的
依赖包信息记录在package.json的dependencies中:$ npm install <packageName> --save
依赖包信息记录在package.json的devDependencies中:$ npm install <packageName>--save-dev
安装所有的包
即可以删除node_modules目录,再
$ npm install
默认会安装dependencies字段和devDependencies字段中的所有模块
或:$ npm install --production
只会安装dependencies(线上)依赖包
// 建议安装前端包管理工具 yarn
$ npm install -g yarn
// 安装完 yarn 后设置镜像源:
yarn config set registry https://registry.npm.taobao.org --global
yarn config set disturl https://npm.taobao.org/dist --global
三、update更新包
$ npm update <packageName>
四、uninstall卸载包
$ npm uninstall <packageName>
五、npm run
npm不仅可以用于模块管理,还可以用于执行脚本。package.json文件有一个scripts字段,可以用于指定脚本命令,供npm直接调用。
文章介绍脚本运行方式:
串行:用&&
连接
并行:用&
连接使用自身的变量:
&npm_package_xxx
使用config的变量:&npm_package_config_xxx
六、对应的
process(进程)其实就是存在nodejs中的一个全局变量。
process.env
属性返回一个包含用户环境信息的对象。
process.env.npm_lifecycle_event
变量 (返回当前正在运行的脚本名称,pretest、test、posttest)