Node.js之NPM工具使用
1.NPM介绍:包管理工具
(1)允许用户从NPM服务器下载别人编写的第三方包到本地石使用
(2)允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用
(3)允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用
2.window系统下使用命令行更新NPM:npm install npm -g
3.使用NPM命令安装模块:npm install <Module Name>
npm install express //Node.js Web 常用的框架模板,安装好后,express包就放在工程目录下的node_modules目录下
4.全局安装和本地安装:
**本地安装:将安装包放在./node_modules下(运行npm命令时所在的目录),如果没有node_modules目录,则会在当前执行npm命令的目录下创建node_modules目录,可以通过require()来引入本地安装的包
npm install express
**全局安装:将安装包放在/usr/local下或你的node的安装目录,可以直接在命令行中使用
npm install express -g
5.使用命令查看全局安装的模块:
npm ls -g
6.使用package.json:用于定义包的属性
**属性说明:
name-包名
version-包的版本号
description-包的描述
homepage-包的官网url
author-包的作者姓名
contributors-包的其他贡献者姓名
dependencies-依赖包列表,如果依赖包没有安装,npm会自动将依赖包安装在npm_modules目录下
repository-包代码存放的地方的类型,可以是git(Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目)或svn(一个版本管理工具,常用于软件开发项目中,实现代码、文档等的历史版本保存、共享和权限管理)
main-main字段是一个模块ID,它是一个指向你程序的主要项目,就是说,如果你的包名字叫express,然后用户安装它,然后require("express")
7.卸载模块:npm uninstall express
8.更新模块:npm search express
9.创建模块,package.json是必不可少的,可以使用npm生成基本的package.json文件:
10.在npm资源库中注册用户:
npm adduser
11.发布模块:npm publish
12.版本号:
语义版本号分为X.Y.Z三位,分别代表主版本号、次版本号和补丁版本号。当代码变更时,版本号按以下原则更新
- 如果只是修复bug,需要更新Z位。
- 如果是新增了功能,但是向下兼容,需要更新Y位。
- 如果有大变动,向下不兼容,需要更新X位。
13.NPM常用命令:
(1)npm help <command>可查看某条命令的详细帮助,例如npm help install
(2)在package.json所在目录下使用npm install . -g 可先在本地安装当前命令行程序,可用于发布前的本地测试
(3)使用npm update <package> -g 可以把当前目录下node_modules子目录里边的对象模块更新至最新版本
(4)使用npm update <package> -g 可以把全局安装的对应命令行程序更新至最新版本
(5)使用npm cache clear可以清空本地NPM本地缓存,用于对付使用相同相同版本号发布新版本代码的人
(6)使用npm unpublish <package>@<version>可以撤销发布自己发布过的某个版本
13.NPM常用命令:
()
Node.js之NPM工具使用的更多相关文章
- 关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用
关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用 工作环境:window下 在一切的最开始,安装node.js (中文站,更新比较慢http://nodejs.cn/) ...
- node.js的npm安装
我不打算引进node.js的npm安装,但发现node.js通过管理一些包npm实现,或给一个简短的npm. 1.npm什么 npm是一个node包管理和分发工具,已经成为了非官方的公布 ...
- Node.js 命令行工具的编写
日常开发中,编写 Node.js 命令行工具来完成一些小任务是很常见的操作.其编写也不难,和日常编写 Node.js 代码并无二致. package.json 中的 bin 字段 一个 npm 模块, ...
- angular2.0学习笔记1.开发环境搭建 (node.js和npm的安装)
开发环境, 1.安装Node.js®和npm, node 6.9.x 和 npm 3.x.x 以上的版本. 更老的版本可能会出现错误,更新的版本则没问题. 控制台窗口中运行命令 node -v 和 n ...
- 实用的 Node.js 教程,工具和资源
这里分享一批实用的实用的 Node.js 教程,工具和资源. Node.js是一个建立在Chrome之上的JavaScript运行时平台,可方便地构建快速,可扩展的网络应用程序.Node.js使用事件 ...
- 安装node.js 和 npm 的完整步骤
vue 生命周期 1,beforeCreate 组件刚刚被创建 2,created 组件创建完成 3,beforeMount 挂载之前 4,mounted 挂载之后 5,beforeDestory 组 ...
- Mac升级Node.js和npm到最新版本指令
一.查看本机当前Node.js和npm版本 node -v npm -v 二.清除node.js的cache sudo npm cache clean -f 三.安装"n"版本管理 ...
- 如何在CentOS 7上安装Node.js和npm
Node.js是一个跨平台的JavaScript运行时环境,允许在服务器端执行JavaScript代码.Node.js主要用于后端,但也作为全栈和前端解决方案而流行. npm,Node软件包管理器的缩 ...
- 【强烈推荐,超详细,实操零失误】node.js安装 + npm安装教程 + Vue开发环境搭建
node.js安装 + npm安装教程 + Vue开发环境搭建 [强烈推荐,超详细,实操零失误] 原博客园地址:https://www.cnblogs.com/goldlong/p/8027997.h ...
随机推荐
- Ubuntu Server 14.04 集成
方便工作出差显示项目整合了下平时常用软件: OS: Ubuntu Server 14.04 VM:VMware Workstation 12.1.0 (不同版本好像会不兼容) 已经安装软件: 1. s ...
- Js计算当前日,当前周开始结束时间,当前月份,当前年份
<script type="text/javascript"> //日期加上天数后的新日期. function GetDateStr(AddDayCount) { va ...
- android 4.4/5.1上使用aar的问题
在Android6.0上可以使用LOCAL_STATIC_JAVA_AAR_LIBRARIES.build脚本会把指定的aar解压缩到临时目录,并将class.jar和res添加到对应的变量. LOC ...
- Eclipse 增加php插件
Eclipse 下载解压后运行, Help ------> Install New Software,在 Work whit 输入http://download.eclipse.org/tool ...
- VMWare虚拟机实例拷贝到另一台服务器后出现Error in the RPC receive loop: RpcIn: Unable to send.错误的解决
把一个VMWare虚拟机实例拷贝到另一台服务器后,在事件查看器中的应用程序日志中不断出现Error in the RPC receive loop: RpcIn: Unable to send.错误, ...
- Ubuntu16.04 VTK7.1.0+QT4.8.6+QtCreator开发环境配置
VTK需要OpenGL3.0或更高版本的驱动,但虚拟机下的Ubuntu不支持OpenGL3.0,或者自己按网上教程配置之后也能支持,但过程相当繁琐,本人试验失败. 最终决心采用双系统,装好之后,执行g ...
- LL(1)文法
<源程序>→<外部声明>|<外部声明><函数体> <外部申明>→<头文件><函数声明>|其他声明 <函数体&g ...
- windows下webstorm开发react-native智能提示
webstorm破解版地址:点这里 1.随便在一个目录下下载ReactNative-LiveTemplate插件,命令为: git clone https://github.com/virtoolsw ...
- JavaScript 中的尾调用
尾调用(Tail Call) 尾调用是函数式编程里比较重要的一个概念,它的意思是在函数的执行过程中,如果最后一个动作是一个函数的调用,即这个调用的返回值被当前函数直接返回,则称为尾调用,如下所示: f ...
- hbase 简单操作
创建一个表 hbase(main):001:0> create 'student', 'name' 0 row(s) in 14.0260 seconds => Hbase::Table ...