一、nvm
nvm current //显示当前使用的版本
nvm ls //列出本地所有安装的版本
nvm ls-remote //列出官网上node的所有版本
nvm install stable // 安装最新稳定版 node(当前最新稳定版11.6.0)
nvm install <version> // 安装指定版本 (install v10.15.0或install 10.15.0)
nvm uninstall <version> // 卸载指定版本node,(如果删除的为当前使用版本,要解绑,则执行 nvm deactivate)
nvm use <version> // 切换使用指定的版本node
nvm alias <name> <version> //给不同的版本号添加别名
nvm unalias <name> //删除已定义的别名
nvm alias default <version> //指定默认版本(设定后需要打开新的终端才生效)
二、npm
1、环境设置
npm config set <key> <value> [-g|--global]
npm config get <key>
npm config delete <key>
npm config list
npm config edit
npm get <key>
npm set <key> <value> [-g|--global]
路径设置
#全局安装路径
npm config set prefix "D:\Program Files\nodejs\node_global"
#缓存路径
npm config set cache "D:\Program Files\nodejs\node_cache"
镜像设置
#检查当前镜像
npm config get registry
#官方默认全局镜像
npm config set registry https://registry.npmjs.org
#1,淘宝镜像源
npm config set registry https://registry.npmmirror.com
npm config set registry https://registry.npm.taobao.org
#2,腾讯云镜像源
npm config set registry http://mirrors.cloud.tencent.com/npm/
#3,华为云镜像源
npm config set registry https://mirrors.huaweicloud.com/repository/npm/
2、安装包管理
-g: #--global 的缩写,表示安装到全局目录里
-S: #--save 的缩写,表示安装的包将写入package.json里面的dependencies
-D: #--save-dev 的缩写,表示将安装的包将写入packege.json里面的devDependencies
查看命令
npm -v #查看版本号
npm root # 查看项目中模块所在的目录
npm root -g # 查看全局安装的模块所在目录
npm list 或者 npm ls # 查看本地已安装模块的清单列表
npm view express dependencies # 查看某个包对于各种包的依赖关系
npm view express version # 查看express最新的版本号
npm view express versions # 查看所有express历史版本号(很实用)
npm view express # 查看最新的express版本的信息
npm info express # 查看express的详细信息,等同于上面的npm view express
npm list express 或 npm ls express # 查看本地已安装的express的详细信息
npm view express repository.url # 查看express包的来源地址
安装模块
npm init # npm 初始化当前目录,在项目中引导创建一个package.json文件
npm install # 安装所有依赖
# 安装指定版本和临时源
npm install -g express@2.5.8 --registry=https://registry.npm.taobao.org
npm i express -g # 会安装到配置的全局目录下
npm i express -S # 安装包信息将加入到dependencies生产依赖
npm i express -D # 安装包信息将加入到devDependencies开发依赖
卸载模块
npm uninstall express # 卸载模块,但不卸载模块留在package.json中的对应信息
npm uninstall express -g # 卸载全局模块
npm uninstall express --save # 卸载模块,同时卸载留在package.json中dependencies下的信息
npm uninstall express --save-dev # 卸载模块,同时卸载留在package.json中devDependencies下的信息
更新模块
npm update express # 更新最新版本的express
npm update express@2.1.0 # 更新到指定版本号的express
npm update express@latest # 更新到最后的新版本
其他命令
npm cache clean # 清除npm的缓存
npm prune # 清除项目中没有被使用的包
npm dedupe # 删除重复的依赖项
npm outdated # 检查模块是否已经过时
npm repo express # 会打开默认浏览器跳转到github中express的页面
npm docs express # 会打开默认浏览器跳转到github中express的README.MD文件信息
npm home express # 会打开默认浏览器跳转到github中express的主页
3、使用淘宝cnpm
npm install -g cnpm --registry=https://registry.npmmirror.com
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm -v
4、运行调试
npm run customCommand #自定义的命令,比如npm run start
npm start [-- <args>]
npm stop [-- <args>]
npm restart [-- <args>]
npm test [-- <args>]
以上几个命令可在package.json中自定义,如下:文章来源地址https://www.toymoban.com/news/detail-505426.html
"scripts": {"start": "gulp -ws"
}
5、模块发布
npm login
npm adduser
npm publish
npm -f unpublish dollarphpajax@* //撤消发布
三、package.json
{
"name": "react",//发布到NPM平台上的唯一标识,如果没有正确设置这两个字段,包就不能发布和被下载
"version": "1.0.0",//发布到NPM平台上的唯一标识,如果没有正确设置这两个字段,包就不能发布和被下载
"description": "Command line instructions",//包的描述信息,将会在npm search的返回结果中显示,以帮助用户选择合适的包
"private":ture,//设为true这个包将不会发布到NPM平台下
"keywords": [//包的关键词信息,是一个字符串数组,同上也将显示在npm search的结果中
"react",
"es6",
"react with es6"
],
"homepage": "https://github.com/rainnaZR/es6-react",
"bugs": {
"url": "https://github.com/rainnaZR/es6-react",
"email": "111@163.com"
},
"license": "ISC",
"author": "ZRainna",
"main": "src/pages/index.js", //包的入口文件
"directories": {//CommonJS包所要求的目录结构信息,展示项目的目录结构信息(较少用)
"tests": "tests",
"lib":"lib",
"docs":"docs"
},
"repository": {//包的仓库地址
"type": "git",
"url": "git+https://github.com/rainnaZR/es6-react.git"
},
//通过设置这个可以使NPM调用一些命令脚本,封装一些功能
"scripts": {"start": "babel-node src/pages/index.js",
"build": "webpack --config config/webpack.config.js",
"watch": "webpack-dev-server --config config/webpack.config.js --hot --inline --progress"
},
"config": {//添加一些设置,可以供scripts读取用,同时这里的值也会被添加到系统的环境变量中,npm start的时候会读取到npm_package_config_port环境变量
"port": "8080"
},
"babel": {
"presets": [
"es2015-node5"
]
},
/*
兼容模块新发布的补丁版本:~1.1.0、1.1.x、1.1
兼容模块新发布的小版本、补丁版本:^1.1.0、1.x、1
兼容模块新发布的大版本、小版本、补丁版本:*、x
*/
"devDependencies": {
"webpack": "^1.13.2",
"webpack-dev-server": "^1.16.1"
},
"dependencies": {
"babel-loader": "^6.2.5",
"babel-preset-es2015": "^6.14.0",
"babel-preset-react": "^6.11.1",
"react": "^15.3.2",
"react-dom": "^15.3.2",
"react-redux": "^4.4.5",
"react-router": "^2.8.1",
"redux": "^3.6.0"
}
}
1、自定义变量
#定义
{
"config": {
"myVariable": "Hello World"
},
}
#查看
$ npm run env | grep npm_package_config_
#在项目中获取,这个前缀是固定的
console.log(process.npm_package_config_myVariable) // Hello World
文章来源:https://www.toymoban.com/news/detail-505426.html
到了这里,关于nvm, npm命令和package.json文件详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!