【前端】NodeJs包管理工具NPM
NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS部署上的很多问题。
测试是否安装成功,出现版本提示表示安装成功。
npm -v
NPM常用命令
官方文档:https://www.npmjs.com/package/doc
npm install <module> #安装模块
npm uninstall <module> #卸载模块
npm update <module> #更新模块
npm search <module> #搜索模块
npm init <module> #创建模块模块
npm add user #npm资源库中注册用户
npm publish #发布模块
npm help #可查看所有命令
npm help <command> #查看某条命令详细帮助
npm install . -g #可以先在本地安装当前命令行程序,可以用于发布前的本地测试
npm cache clear #清空NPM本地缓存
npm unpublish <package>@<version> #撤销发布过的某个版本
检查模块卸载是否成功:进入/node_modules/目录查看包是否还在,或者使用如下命令:
npm ls
全局安装与本地安装
npm包安装分本地安装(local)和全局安装(global),差别是带不带 -g(global).
- 本地安装:将安装包放在./node_modules下;可以通过require()引入本地安装包。
- 全局安装:将安装包放在/urs/local或者node的安装目录;可以直接在命令行使用。
npm install <module> # 本地安装
npm install <module> -g # 全局安装
npm list -g #查看所有全局安装模块
npm list <module> #查看具体模块版本号
使用package.json
package.json位于模块的根目录下,用于定义包的属性。
package.json具体属性说明:
- name——包名
- version——包的版本号
- description——包的描述
- homepage——包的官网url
- author——包的作者
- contributors——包的其他贡献者
- dependencies——依赖包列表。如果依赖包没有安装,npm会自动将依赖包安装在node_module目录下
- repository——包代码存在的地方类型,可以是git、svn
- main——程序的主入口文件,默认是模块根目录的index.js
- keyword——关键字
NPM版本号
NPM使用语义版本号管理代码。语义版本号分为X.Y.Z三位,分别代表主版本号、次版本号和补丁版本号。代码变更时,版本号按照如下原则更新。
- 如果只是修复bug,需要更新Z位。
- 如果是新增了功能,但向下兼容,需要更新Y位。
- 如果有大变动,向下不兼容,需要更新X位。
版本号有了这个保证后,在申明第三方包依赖的时候,可以依赖某个范围的版本号。
使用淘宝NPM镜像
国内直接使用npm官方镜像非常慢,可以使用淘宝NPM镜像。淘宝NPM镜像是一个完整的npmjs.org镜像,同步频率为10min一次。
淘宝npm: http://npm.taobao.org/
npm install -g cnpm --registry=https://registry.npm.taobao.org #安装cnpm代替npm
npm config set registry https://registry.npm.taobao.org/ #直接修改npm镜像仓库registry
【前端】NodeJs包管理工具NPM的更多相关文章
- NodeJS包管理工具——npm入门
如今每个语言体系中都有一个包管理工具,PHP的Composer,Ruby的gem,Python的pip,Java的Maven……当然还有Node.js的npm.有的人会奇怪为何要引入又一个新东西来让我 ...
- nodejs包管理工具npm
用Node.js安装模块 在某个项目中单独安装的时候,npm会下载所有的文件到你项目中的一个叫做node_modules的文件夹内 全局模块会被安装到{prefix}/lib/node_modules ...
- 主流包管理工具npm、yarn、cnpm、pnpm之间的区别与联系——原理篇
接触 node 之后,一直使用npm包管理工具, cnpm 一开始会用一些,但是并没有觉得比 npm 快得多,使用 cnpm 的时候还经常安装不成功,只能再用 npm 安装一遍,渐渐的就弃用了 cnp ...
- bower一个强大的前端依赖包管理工具
在介绍之前,你必须的知道bower是基于nodejs开发的,所以你首先必须得有个nodejs环境,至于这么安装nodejs网上一大堆教程,对了使用bower还需要安装git,这里就不多说了. #### ...
- node.js开发 npm包管理工具 npm 和 cnpm区别
npm 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用. 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用 np ...
- 更换包管理工具npm为yarn
官网:https://yarnpkg.com/zh-Hans/ 主要考虑: 1. npm管理安装模块依赖的版本不太方便,容易在删除node_modules重新install或在其他机器上新安装时, 安 ...
- JavaScript 包管理工具npm 和yarn 对比
- 包管理工具(npm、yarn)
npm包管理工具 1. npm的包安装分为本地安装(local).全局安装(global)两种,从敲的命令行来看,差别只是有没有-g而已. 2. 这两种安装方式的区别: 本地安装(安装在命令行运行所在 ...
- Node.js之包与npm包管理工具
Node.js之包与npm包管理工具 1.Node.js中的包 1.1在一个包中包含如下内容: package.json:对包进行描述 在bin子目录中存放二进制文件 在lib子目录中存放JavaSc ...
随机推荐
- dockerfile简述
作用 Dockerfile的内容是一坨可以执行的代码(或者说是指令)(docker的DSL),这些代码使得创建镜像的操作可以复用以及自动化. 指令格式 Dockerfile的指令格式很简单: INST ...
- sftp命令不被识别
sftp命令不被识别 原因:C:\Windows\System32文件夹下面没有sftp可执行程序 解决方案:安装openssh,安装完成之后可发现在path系统变量的值中多了openssh的安装目录 ...
- Spring Boot + docker +mongo
启动mongo镜像 docker run --name mongo-container -d -P mongo 连接到容器内 docker exec -it eb sh 输入:mongo 输入:sho ...
- [Java初探07]__关于面向对象的简单认识
前言 类和对象,在我们学习Java语言的过程中,它们无时无刻不存在着,在我们还远未详细弄明白它们的意义之前,在我们不知不觉的下意识里,我们都会直接或间接的用到它们,这是因为Java是一门面向对象的语言 ...
- koa2 接收post参数
koa2接收Post参数由于没有在上下文对象上解析,所以需要用node 原生req解析. 获取到的参数,要注意转码问题. const Koa = require('koa'); const app = ...
- 走进javascript——它是什么?
javascript不是什么 如<把时间当作朋友>的作者所说,"有些时候,有些事物,从反面描述比从正面描述更为容易.如若先仔细说清楚这本书不是什么,之后,至于它究竟是什么,很可能 ...
- 误删centos的ps命令,恢复
脑子短路将/bin/ps文件删除.发现ps命令无法用了.下面是恢复方法 1,执行rpm -qf /bin/ps 查看ps命令所需要的rpm包 [root@iZm5e727lmif5lZ ~]# rpm ...
- redis乐观锁(适用于秒杀系统)
redis事务中的WATCH命令和基于CAS的乐观锁 在Redis的事务中,WATCH命令可用于提供CAS(check-and-set)功能.假设我们通过WATCH命令在事务执行之前监控了多个Key ...
- Java 使用pipeline对redis进行批量读写
code import redis.clients.jedis.Jedis; import redis.clients.jedis.Pipeline; import java.util.List; p ...
- (转)Spring事务管理(详解+实例)
文章转自:http://blog.csdn.net/trigl/article/details/50968079 写这篇博客之前我首先读了<Spring in action>,之后在网上看 ...