如何能分清npm cnpm npx nvm


Posted in Javascript onJanuary 17, 2019

用过 npm cnpm吗?知道 npx nvm 吗?

唔~

npm

npm 的全称是 Node Package Manager 是 JavaScript 世界的包管理工具,并且是 Node.js 平台的默认包管理工具,在安装的 nodejs 的时候,npm 会跟着一起安装。通过 npm 可以安装、共享、分发代码,管理项目依赖关系。

npm -v 显示版本,检查npm 是否正确安装
npm help 可查看某条命令的详细帮助,例如npm help install
npm list -g 查看已经安装的模块
npm show express 查看已经安装的模块的详情 
npm cache clean --force 清除npm本地缓存

npm init 初始化
npm install xxx 下载包
npm uninstall xxx 卸载包
npm update xxx 更新包
npm outdated -g --depth=0 要找出需要更新的软件包

发布一个 npm 包:

  • 注册 && 查询:https://www.npmjs.com
  • 登录:npm login
  • 查询确认成功:npm whoami
  • 上传包:npm publish
  • 验证邮箱:npm adduser
  • 换源:npm config set registry http://registry.npmjs.org
  • 更新:修改 version 后 npm publish

cnpm

cnpm 淘宝镜像,可以看成是 npm 的国内版本,下载 npm 包的速度更快。

安装 npm install cnpm -g --registry=https://registry.npm.taobao.org。

npx

npm v5.2.0 引入的一条命令。

npx 会帮你执行依赖包里的二进制文件,引入这个命令的目的是为了提升开发者使用包内提供的命令行工具的体验。

把原来需要全局安装的包放到项目目录下安装。

old:

npm install -g create-react-app

create-react-app my-app

new:

npx create-react-app my-app

临时安装 create-react-app 包,命令完成后 create-react-app 会删掉,不会出现在 global 中,下次再执行,还是会重新临时安装。

nvm

node 管理工具

在开发中,有时候对 node 的版本有要求,有时候需要切换到指定的 node 版本来重现问题等。遇到这种需求的时候,我们需要能够灵活的切换 node 版本,nvm 就是为解决这个问题而产生的,他可以方便的在同一台设备上进行多个 node 版本之间切换。

nvm 不支持 Windows,但是有替代品,也就是 nvm-windows。

安装 nvm:

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

安装完成后关闭终端,重新打开终端输入 nvm 验证一下是否安装成功,当出现“Node Version Manager”时,说明已安装成功。

如果在新的终端输入 nvm 时提示:command not found: nvm,有可能是以下原因之一:

你的系统可能缺少一个 .bash_profile 文件,你可以创建一个此文件(可通过vi或vim命令),打开复制粘贴以下代码(安装nvm成功后终端的最好3行代码)进去,保存,然后再次运行安装命令;

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion

注意:如果你安装了 oh my zsh ,需要在 .zshrc 文件去添加以上配置信息,(一般安装成功都会自动写入这个文件最底部)。

如果上面没有解决问题,打开你的 .bash_profile 文件,并添加以下代码:
source ~/.bashrc,更改完记得保存更改。

常用命令:

nvm ls-remote    列出全部可以安装的版本号
nvm install stable   安装当前最新的稳定版
nvm install v10.14.0  安装指定版本
nvm ls      显示所有安装的版本
nvm current     查看当前版本
nvm use v10.14.0   切换node版本
nvm alias default v10.14.0 设置默认版本

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript confirm选择判断
Oct 18 Javascript
Jquery操作Select 简单方便 一个js插件搞定
Nov 12 Javascript
JS动态获取当前时间,并写到特定的区域
May 03 Javascript
JavaScript通过join函数连接数组里所有元素的方法
Mar 20 Javascript
javascript解决IE6下hover问题的方法
Jul 28 Javascript
jQuery中hover与mouseover和mouseout的区别分析
Dec 24 Javascript
js 声明数组和向数组中添加对象变量的简单实例
Jul 28 Javascript
Vue.js Ajax动态参数与列表显示实现方法
Oct 20 Javascript
koa2 从入门到精通(小结)
Jul 23 Javascript
vue子传父关于.sync与$emit的实现
Nov 05 Javascript
jQuery+css实现的点击图片放大缩小预览功能示例【图片预览 查看大图】
May 29 jQuery
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
Sep 21 Javascript
JavaScript设计模式之装饰者模式实例详解
Jan 17 #Javascript
npm 常用命令详解(小结)
Jan 17 #Javascript
JavaScript设计模式之享元模式实例详解
Jan 17 #Javascript
vuex页面刷新后数据丢失的方法
Jan 17 #Javascript
jquery获取img的src值实例介绍
Jan 16 #jQuery
js中int和string数据类型互相转化实例
Jan 16 #Javascript
JavaScript设计模式之观察者模式实例详解
Jan 16 #Javascript
You might like
一条久听不愿放下的DIY森海MX500,三言两语话神奇
2021/03/02 无线电
基于MySQL体系结构的分析
2013/05/02 PHP
探讨多键值cookie(php中cookie存取数组)的详解
2013/06/06 PHP
php使用$_POST或$_SESSION[]向js函数传参
2014/09/16 PHP
如何使用GDB调试PHP程序
2015/12/08 PHP
PHP创建PowerPoint2007文档的方法
2015/12/10 PHP
PHP MYSQL实现登陆和模糊查询两大功能
2016/02/05 PHP
网页开发中的容易忽略的问题 javascript HTML中的table
2009/04/15 Javascript
jQuery 数据缓存data(name, value)详解及实现
2010/01/04 Javascript
javascript学习笔记(十九) 节点的操作实现代码
2012/06/20 Javascript
jQuery入门介绍之基础知识
2015/01/13 Javascript
jquery.form.js实现将form提交转为ajax方式提交的方法
2015/04/07 Javascript
jQuery插件Tmpl的简单使用方法
2015/04/27 Javascript
jQuery实现滑动页面固定顶部显示(可根据显示位置消失与替换)
2015/10/28 Javascript
vuejs2.0运用原生js实现简单的拖拽元素功能示例
2017/02/24 Javascript
Bootstrap下拉菜单Dropdowns的实现代码
2017/03/17 Javascript
使用vue实现多规格选择实例(SKU)
2019/08/23 Javascript
vue实现可移动的悬浮按钮
2021/03/04 Vue.js
Using Django with GAE Python 后台抓取多个网站的页面全文
2016/02/17 Python
Python中使用platform模块获取系统信息的用法教程
2016/07/08 Python
使用sklearn之LabelEncoder将Label标准化的方法
2018/07/11 Python
Python实现的读取/更改/写入xml文件操作示例
2018/08/30 Python
python pip如何手动安装二进制包
2020/09/30 Python
tensorflow与numpy的版本兼容性问题的解决
2021/01/08 Python
详解HTML5中的Communication API基本使用方法
2016/01/29 HTML / CSS
使用phonegap播放音频的实现方法
2017/03/31 HTML / CSS
HTML5 客户端数据库简易使用:IndexedDB
2019/12/19 HTML / CSS
TALLY WEiJL法国网上商店:服装、时装及配饰
2019/08/31 全球购物
美国电子产品购物网站:BuyDig.com
2020/06/17 全球购物
波兰办公用品和学校用品在线商店:Dlabiura24.pl
2020/11/18 全球购物
实习会计求职自荐信范文
2014/03/10 职场文书
绿色学校实施方案
2014/03/31 职场文书
房屋产权证明书
2014/10/15 职场文书
怎样写家长意见
2015/06/04 职场文书
使用 Apache Dubbo 实现远程通信(微服务架构)
2022/02/12 Servers
vue route新窗口跳转页面并且携带与接收参数
2022/04/10 Vue.js