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 ...
随机推荐
- vs插件ZunKoIDE
→〇,配置: vs →壹,默认背景图路径 C:\Users\{用户名}\AppData\Local\Microsoft\VisualStudio\14.0\Extensions\gqyswd1b.dv ...
- 【Java】增强的for流程
增强for循环语法: for(type element: array) { System.out.println(element); } 可遍历输出数组元素,但无法获取元素下标. 相关链接 ...
- 2016-WAS
http://cuisuqiang.iteye.com/blog/1936402 http://gukeming888.iteye.com/blog/1706475 dd:2016-3-28 inst ...
- 配置子目录Web.config使其消除继承,用虚拟目录创建多个网站的方法
来源:http://www.wtnzone.com/post/2011/02/20/Set-Web-Config-to-Turn-Inheritance-Off.aspx ASP.NET提供了强大的W ...
- zookeeper_service 出错 java.lang.NoClassDefFoundError: org/I0Itec/zkclient/exception/ZkNoNodeException
2016-12-18 08:28:07 ContextLoader:358 ERROR - Context initialization failed java.lang.NoClassDefFoun ...
- 项目vue2.0仿外卖APP(三)
项目的结构如下: 项目资源准备 准备项目的各种图片资源等等 注意:在webpack可以不用css sprite,直接用单张图片,因为它会帮忙打包. 还有SVG图片, ...
- maven实战(04)_在pom中使用properties
使用常量不仅让代码变得简洁,更重要的是可以避免重复,在需要更改的时候,只需要修改一处,降低了错误发生的概率. <project> <modelVersion>4.0.0< ...
- TI PDK3.0 qt 交叉编译环境设置
上午剑锋给的方法,成功在qtcreator上面加入TI官方的qmake以及他的交叉编译器. 1. 步骤如下: 1. 我假设TI PDK3.0 安装目录为顶层目录. 2. 进入linux-devkit ...
- js日期相关
时间戳转正常日期时间 1469512964000 —> 2016/7/26 下午2:02 var getLocalTime = function(nS) { // 13位时间戳 return n ...
- WPF 通过Border来画边框
WPF有自己的表格控件DataGrid.ListBox等,如果只是简单的需求,可以通过Border控件来画边框. 比如我们需要给上面的控件加上边框. <Window x:Class=" ...