如何能分清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 相关文章推荐
关于IE浏览器以及Firefox下的javascript冒泡事件的响应层级
Oct 14 Javascript
Jquery ajax传递复杂参数给WebService的实现代码
Aug 08 Javascript
JavaScript解析URL参数示例代码
Aug 12 Javascript
jQuery实现根据类型自动显示和隐藏表单
Mar 18 Javascript
JavaScript实现数字数组正序排列的方法
Apr 06 Javascript
Jquery Easyui表单组件Form使用详解(30)
Dec 19 Javascript
[Bootstrap-插件使用]Jcrop+fileinput组合实现头像上传功能实例代码
Dec 20 Javascript
微信小程序上滑加载下拉刷新(onscrollLower)分批加载数据(二)
May 11 Javascript
vue如何获取点击事件源的方法
Aug 10 Javascript
浅析Vue实例以及生命周期
Aug 14 Javascript
详解Nuxt.js 实战集锦
Nov 19 Javascript
解决pycharm双击但是无法打开的情况
Oct 31 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
PHP 一个比较完善的简单文件上传
2010/03/25 PHP
PHP按指定键值对二维数组进行排序的方法
2015/12/22 PHP
PHP+redis实现微博的推模型案例分析
2019/07/10 PHP
jquery.cvtooltip.js 基于jquery的气泡提示插件
2010/11/19 Javascript
JS格式化数字保留两位小数点示例代码
2013/10/15 Javascript
Javascript中的包装类型介绍
2015/04/02 Javascript
js正则表达式验证邮件地址
2015/11/12 Javascript
jQuery插件实现适用于移动端的地址选择器
2016/02/18 Javascript
js中 计算两个日期间的工作日的简单实例
2016/08/08 Javascript
Angularjs实现带查找筛选功能的select下拉框示例代码
2016/10/04 Javascript
jQuery中$.grep() 过滤函数 数组过滤
2016/11/22 Javascript
微信小程序 数据交互与渲染实例详解
2017/01/21 Javascript
浅谈Node.js 中间件模式
2018/06/12 Javascript
取消Bootstrap的dropdown-menu点击默认关闭事件方法
2018/08/10 Javascript
vue动态绑定class选中当前列表变色的方法示例
2018/12/19 Javascript
Vue的路由及路由钩子函数的实现
2019/07/02 Javascript
vue实现滑动到底部加载更多效果
2020/10/27 Javascript
[00:55]2015国际邀请赛中国区预选赛5月23日——28日约战上海
2015/05/25 DOTA
pyqt4教程之messagebox使用示例分享
2014/03/07 Python
Python cookbook(字符串与文本)针对任意多的分隔符拆分字符串操作示例
2018/04/19 Python
Python3中内置类型bytes和str用法及byte和string之间各种编码转换 问题
2018/09/27 Python
使用python将请求的requests headers参数格式化方法
2019/01/02 Python
python实现读取excel文件中所有sheet操作示例
2019/08/09 Python
pytorch 实现tensor与numpy数组转换
2019/12/27 Python
使用Python防止SQL注入攻击的实现示例
2020/05/21 Python
什么是Python变量作用域
2020/06/03 Python
Python高阶函数与装饰器函数的深入讲解
2020/11/10 Python
CSS3 网页下拉菜单代码解释 中文翻译
2010/02/27 HTML / CSS
简单几步用纯CSS3实现3D翻转效果
2019/01/17 HTML / CSS
美国东北部户外服装和设备零售商:Eastern Mountain Sports
2016/10/05 全球购物
法制宣传日活动总结
2014/04/29 职场文书
预备党员群众意见
2015/06/01 职场文书
家长通知书家长意见
2015/06/03 职场文书
十月围城观后感
2015/06/08 职场文书
初一数学教学反思
2016/02/17 职场文书
「租借女友」第2季樱泽墨角色PV&新视觉图公开
2022/03/21 日漫