使用npm安装最新版本nodejs


Posted in NodeJs onJanuary 18, 2018

# 安装 nodejs

 以下介绍的是命令行安装方法,读者也可以到 nodejs官网 上下载安装最新版。

sudo apt-get install nodejs-legacy
sudo apt-get instatll npm

升级npm为最新版本

sudo npm install npm@latest -g

往往用命令行安装的nodejs不是最新版本,而且升级nodejs并不是件非常简单的事情;这时我们需要用非常好用的nodejs版本管理模块n

sudo npm install -g n

通过 模块n 安装指定版本的 nodejs

sudo n latest
sudo n stable
sudo n lts

我们可以通过查看版本号来检查是否安装成功和是否安装到想要的版本

node -v
npm -v

# 说说 npm

npm (node package manage) 是 nodejs的包管理器,用于 node 插件的管理包括 安装、卸载、管理依赖等

使用npm安装插件,语法为; npm install <name> [-g] [--save-dev]
  2,1  <name> :要管理的插件名称,例如: npm install gulp-less --save-dev
  2.2  -g :全局安装。可选,不加时插件会安装到当前定位目录的node_modules文件夹下。全局安装的优势是可以在任何地方通过命令行调用。
  2.3 --save:保存配置信息到 package.json文件中。package.json是nodejs项目的配置文件。
  2.4 -dev:保存至package.json 的devDependencies节点,如果不加-dev将会保存至dependencies节点中。
  2.5 为什么要保存至package.json中? 因为node插件包很庞大,所以不加入版本管理,将配置信息加入package.json中可以指明这些插件需要进行版本管理,在浏览或其他开发者使用时就能明白应该使用那个版本的插件,同时用npm intstall 安装时会根据package.json所指定的内容下载所需要的包。另外,用 npm install --production 只会下载package.json中dependencies节点的包

使用 npm 卸载插件, 语法格式为:npm uninstall <name> [-g][--save-dev]
  3.1 不要直接本地删除插件包
  3.2 删除全部插件,语法为:npm uninstall gulp-less gulp-gulify gulp-concat ...
  3.3 借助rimraf一次性删除: npm install rimraf -g,用法 rimraf node_modules

使用 npm 更新插件,语法为: npm update <name> [-g] [--save-dev]
  4.1 更新全部插件:```npm update [--save-dev]

查看 npm 帮助, 语法为:npm help

查看已装插件,语法为: npm list

# 选用 cnpm

npm 服务在国外,因此受网络影响很大,经常会出现异常,淘宝团队为此做了完整的npmjs.org镜像,版本同步频率为10min一次。官网地址为:http://npm.taobao.org

安装cnpm,使用命令 npm install cnpm -g --registry=https://registry.npm.taobao.org 安装完成后用 cnpm -v 查看是否安装成功
cnpm的使用方法和npm完全一致,只需要把npm改成cnpm即可

# 新建 package.json 文件

package.json 文件是基于nodejs的项目必不可少的配置文件,它以普通json文件形式保存在根目录中。
内容及格式大致如下:(json文件不能注释,注意删除)

{
 "name": "test", // 项目名称(必须)
 "version": "1.0.0", // 项目版本(必须)
 "description": "project description!", // 项目描述(必须)
 "homepage": "", // 项目主页
 "repository": { // 项目资源库
  "type": "git",
  "url": "https://xxxx/xxx"
 },
 "author": { // 项目作者信息
  "name": "surging",
  "email": "xxx@163.com"
 },
 "license": "ISC", // 项目许可协议
 "devDependencies": { // 项目依赖的插件,加 -dev 安装会自动加到此处
  "gulp": "^3.8.11",
  "gulp-less": "^3.0.0"
 }
}

创建 package.json 文件,语法 npm init

cd ~/workspace/demo
npm init

然后一步步按提示往下填写信息即可,如下:

npm init

然后你可以看到文件夹下生成了一个 package.json 的文件,打印信息如下:

package.json 信息打印

当然你也可以手动创建,不过我相信你不会这么干。

4.查看package.json帮助文档,语法为:cnpm help package.json

# 后语

  本文介绍了写常用的npm用法,如果大家有不同的看法和建议,欢迎大家评论区交流哦~

NodeJs 相关文章推荐
nodejs npm install全局安装和本地安装的区别
Jun 05 NodeJs
nodejs初步体验篇
Nov 23 NodeJs
nodejs利用http模块实现银行卡所属银行查询和骚扰电话验证示例
Dec 30 NodeJs
用nodeJS搭建本地文件服务器的几种方法小结
Mar 16 NodeJs
详解nodejs微信公众号开发——1.接入微信公众号
Apr 10 NodeJs
NodeJs的fs读写删除移动监听
Apr 28 NodeJs
nodejs mysql 实现分页的方法
Jun 06 NodeJs
nodejs 搭建简易服务器的图文教程(推荐)
Jul 18 NodeJs
Nodejs+express+ejs简单使用实例代码
Sep 18 NodeJs
NodeJS模块与ES6模块系统语法及注意点详解
Jan 04 NodeJs
Nodejs中使用puppeteer控制浏览器中视频播放功能
Aug 26 NodeJs
nodejs脚本centos开机启动实操方法
Mar 04 NodeJs
nodejs结合socket.io实现websocket通信功能的方法
Jan 12 #NodeJs
nodejs结合Socket.IO实现的即时通讯功能详解
Jan 12 #NodeJs
nodejs基于WS模块实现WebSocket聊天功能的方法
Jan 12 #NodeJs
nodejs使用http模块发送get与post请求的方法示例
Jan 08 #NodeJs
nodejs基于mssql模块连接sqlserver数据库的简单封装操作示例
Jan 05 #NodeJs
Nodejs连接mysql并实现增、删、改、查操作的方法详解
Jan 04 #NodeJs
nodejs简单实现TCP服务器端和客户端的聊天功能示例
Jan 04 #NodeJs
You might like
xml+php动态载入与分页
2006/10/09 PHP
PHP中echo,print_r与var_dump区别分析
2014/09/29 PHP
thinkphp Apache配置重启Apache1 restart 出错解决办法
2017/02/15 PHP
laravel框架实现去掉URL中index.php的方法
2019/10/12 PHP
PHP反射基础知识回顾
2020/09/10 PHP
纯JAVASCRIPT图表动画插件Highcharts Examples
2011/04/16 Javascript
javascript 进阶篇2 CSS XML学习
2012/03/14 Javascript
Jquery:ajax实现翻页无刷新功能代码
2013/08/05 Javascript
解析JavaScript中点号“.”的多义性
2013/12/02 Javascript
js确认删除对话框适用于a标签及submit
2014/07/10 Javascript
Linux下为Node.js程序配置MySQL或Oracle数据库的方法
2016/03/19 Javascript
js指定步长实现单方向匀速运动
2017/07/17 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
2017/11/03 Javascript
解决VUE自定义拖拽指令时 onmouseup 与 click事件冲突问题
2020/07/24 Javascript
OpenLayers3实现地图鹰眼以及地图比例尺的添加
2020/09/25 Javascript
javascript实现放大镜功能
2020/12/09 Javascript
Python简单获取自身外网IP的方法
2016/09/18 Python
Python实现FTP弱口令扫描器的方法示例
2019/01/31 Python
详解python中递归函数
2019/04/16 Python
centos 安装Python3 及对应的pip教程详解
2019/06/28 Python
python GUI库图形界面开发之PyQt5打印控件QPrinter详细使用方法与实例
2020/02/28 Python
Pandas的数据过滤实现
2021/01/15 Python
35款精致的 CSS3 和 HTML5 网页模板 推荐
2012/08/03 HTML / CSS
波兰最大的度假胜地和城市公寓租赁运营商:Sun & Snow
2018/10/18 全球购物
高分子材料个人求职信范文
2013/09/25 职场文书
亲子拓展活动方案
2014/02/20 职场文书
小学生纪念九一八事变演讲稿
2014/09/14 职场文书
农业项目投资意向书
2015/05/09 职场文书
2015年出纳年终工作总结
2015/05/14 职场文书
2019年员工晋升管理制度范本!
2019/07/08 职场文书
PyTorch 如何设置随机数种子使结果可复现
2021/05/12 Python
pandas:get_dummies()与pd.factorize()的用法及区别说明
2021/05/21 Python
Win10 和 Win11可以共存吗? win10/11产品生命周期/服务更新介绍
2021/11/21 数码科技
解决Windows Server2012 R2 无法安装 .NET Framework 3.5
2022/04/29 Servers
如何利用python实现列表嵌套字典取值
2022/06/10 Python
Win11 PC上的Outlook搜索错误怎么办?
2022/07/15 数码科技