一、什么是npm呢

npm(Node Package Manager,node包管理器)是node的包管理器,他允许开发人员在node.js应用程序中创建,共享并重用模块。模块就是可以在不同的项目中重用的代码库。他也可以用来共享完整的node.js代码库。
npm安装
npm的安装非常简单,在linux下只要一条命令即可完成安装(在windows下由于node.js本身就集成了npm的功能,所以安装了node.js,npm也就相应的安装完成了。),如下:
apt-get install npm

安装完后,运行“npm”命令检查一下是否安装成功,出现如下提示说明安装成功:

lee@mypc ~ $ npm

Usage: npm <command>

where <command> is one of:
access, add-user, adduser, apihelp, author, bin, bugs, c,
cache, completion, config, ddp, dedupe, deprecate, dist-tag,
dist-tags, docs, edit, explore, faq, find, find-dupes, get,
help, help-search, home, i, info, init, install, issues, la,
link, list, ll, ln, login, logout, ls, outdated, owner,
pack, ping, prefix, prune, publish, r, rb, rebuild, remove,
repo, restart, rm, root, run-script, s, se, search, set,
show, shrinkwrap, star, stars, start, stop, t, tag, team,
test, tst, un, uninstall, unlink, unpublish, unstar, up,
update, upgrade, v, verison, version, view, whoami npm <cmd> -h quick help on <cmd>
npm -l display full usage info
npm faq commonly asked questions
npm help <term> search for help on <term>
npm help npm involved overview Specify configs in the ini-formatted file:
/home/lee/.npmrc
or on the command line via: npm <command> --key value
Config info can be viewed via: npm help config npm@3.3.12 /usr/local/lib/node_modules/npm

二、npm使用说明

1、模式

npm有全局和本地两种模式。

本地模式是npm的默认模式,这种模式的工作范围仅限于当前的工作目录下,任何操作都不会影响电脑上的其他node.js代码。

eg. 把log4js安装到当前项目下

npm install -d log4js

反之,全局模式是为电脑上所有的node.js项目服务的。如果安装Node时使用的默认目录,在全局模式下面,NPM会把包安装到/usr/local/lib/node_modules。

eg. 安装express

npm install -g express

2、npm常用命令

  • npm init  会引导你创建一个package.json文件,包括名称、版本、作者这些信息等
  • npm install <name> 安装nodejs的依赖包
  • npm install <name> -g  将包安装到全局环境中
  • npm install <name> --save  安装的同时,将信息写入package.json中。项目路径中如果有package.json文件时,直接使用npm install方法就可以根据dependencies配置安装所有的依赖包
  • npm remove <name> 移除
  • npm update <name> 更新
  • npm ls  列出当前安装的了所有包
  • npm root  查看当前包的安装路径
  • npm root -g  查看全局的包的安装路径
  • npm help  帮助,如果要单独查看install命令的帮助,可以使用的npm help install
三、安装模块:
安装npm之后就可以从终端安装模块了。
按Windows键+r,输入cmd,调出命令行窗口。利用cd切换到项目所在的目录,在所建项目的根目录下执行如下命令:npm install [module_name],就可以在项目的根目录下看到node_modules文件夹,这个文件夹里面的模块就是刚才下载的模块了。npm install [module_name]这个命令向npm注册服务器发送请求,把某个模块的最新版本下载到本地计算机上。
下面我们以underscore这个模块为例。
F:\studyNeed\testjs>npm install underscore
underscore@1.8.3 node_modules\underscore
安装成功的输出告诉我们三件事情:
  >成功下载的模块的名称
  >模块的版本
  >模块的下载位置
具体的执行如下:
1>在计算机上任意建一个文件夹,新建一个文件,打开文本编辑器输入如下代码
var _ = require('underscore');
_.each([1, 2, 3], function(num){
console.log("underscore.js says " + num);
});
2>将文件保存成:foo.js
3>使用上面介绍的安装underscore模块:
npm install underscore
注意:为了让npm将模块安装在正确的位置,在运行上述命令时必须位于项目文件夹中。
4>从命令行终端运行:node foo.js
会看到如下的运行结果:

3、使用模块
要在node.js应用程序中使用模块,确保模块下载之后使用require来请求模块。在应用程序中请求一个模块的方法如下:
var module = require('module');
当应用程序运行的时候,他将在源文件中找库(library),并将其包含在应用程序中,通常我们要使用一个模块将其赋值给变量,这个变量就是对这个模块的引用。上面的例子可以说明这点。
4、使用npm查看全局安装的包

在使用node的时候,用npm安装了很多软件,过一段时间没有使用就会忘记,怎么查看自己全局安装过的包,用命令

npm list -g --depth 0

显示如下:

 

node.js的npm详解的更多相关文章

  1. 《Node.js开发实战详解》学习笔记

    <Node.js开发实战详解>学习笔记 ——持续更新中 一.NodeJS设计模式 1 . 单例模式 顾名思义,单例就是保证一个类只有一个实例,实现的方法是,先判断实例是否存在,如果存在则直 ...

  2. Node.js中Async详解:流程控制

    安装 npm install async --save 地址 https://github.com/caolan/async Async的内容主要分为三部分 流程控制: 简化九种常见的流程的处理 集合 ...

  3. Node.js + Express中间件详解

    使用中间件 Express是一种路由和中间件Web框架,它具有自己的最小功能:Express应用程序本质上是一系列中间件函数调用. 中间件函数是可以访问请求对象 (req),响应对象(res)以及应用 ...

  4. Node.js HTTP 使用详解

    对于初学者有没有发觉在查看Node.js官方API的时候非常简单,只有几个洋文描述两下子,没了,我第一次一口气看完所以API后,对于第一个示例都有些懵,特别是参数里的request和response, ...

  5. 阿里云ECS服务器部署Node.js项目全过程详解

    本文详细介绍如何部署NodeJS项目到阿里云ECS上,以及本人在部署过程中所遇到的问题.坑点和解决办法,可以说是全网最全最详细的教程了.同时讲解了如何申请阿里云免费SSL证书,以及一台ECS服务器配置 ...

  6. Node.js之eventproxy详解

    安装 npm install eventproxy --save 调用 var EventProxy = require('eventproxy'); 异步协作 多类型异步协作 此处以页面渲染为场景, ...

  7. Node.js npm 详解

    一.npm简介 安装npm请阅读我之前的文章Hello Node中npm安装那一部分,不过只介绍了linux平台,如果是其它平台,有前辈写了更加详细的介绍. npm的全称:Node Package M ...

  8. ES6,ES2105核心功能一览,js新特性详解

    ES6,ES2105核心功能一览,js新特性详解 过去几年 JavaScript 发生了很大的变化.ES6(ECMAScript 6.ES2105)是 JavaScript 语言的新标准,2015 年 ...

  9. Linux(CentOS)安装Node.JS和npm的两种方式(yum安装和源码安装)

    yum安装 yum安装是将yum源中的rpm包下载到本地,安装这个rpm包.这个rpm包是别人编译安装好的二进制包.这种方式方便快捷,特别是不用考虑包依赖. 0.了解linux版本 通过 uname ...

随机推荐

  1. hdu 5265 pog loves szh II

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5265 pog loves szh II Description Pog and Szh are pla ...

  2. 基于jquery的页面代码的优化

    高亮显示,选中的文字链接 显示效果如下 默认选择“通知公告”效果 通知公告 学院动态 行业动态       选择“学院动态”效果 通知公告 学院动态 行业动态       选择“行业动态”效果 通知公 ...

  3. kafka中server.properties配置文件参数说明

    转自:http://blog.csdn.net/lizhitao/article/details/25667831 参数 说明(解释) broker.id =0 每一个broker在集群中的唯一表示, ...

  4. 两个有用的shell工具总结

    shell工具之一:sed sed基础 sed编辑器被称作流编辑器,与常见的交互式文本编辑器刚好相反.文本编辑器可以通过键盘来交互式地插入.删除.替换文本中的数据:而流编辑器是基于一组预先的规则来编辑 ...

  5. 项目进阶 之 集群环境搭建(三)多管理节点MySQL集群

    上次的博文项目进阶 之 集群环境搭建(二)MySQL集群中,我们搭建了一个基础的MySQL集群,这篇博客咱们继续讲解MySQL集群的相关内容,同时针对上一篇遗留的问题提出一个解决方案. 1.单管理节点 ...

  6. iOS UIView的简单渐变效果

    这里主要用到了ios4.0以后 UIView的类方法 animateWithDuration: 函数原型包括以下类方法 + (void)animateWithDuration:(NSTimeInter ...

  7. 封装insertAfter、addClass、格式化时间

    insertAfter,在JS节点操作中,并没有insertAfter方法,因此需要重新封装 function insertAfter(newEle,targetNode) { var oParent ...

  8. 在Eclipse中怎样写Java注释

    java中的注释分为实现注释和文档注释 实现注释就是那些/……../和//……的注释,是注释程序用的,文档注释是/*……./的注释,是用来生成javadoc的.设置方法如下: 1.打开Eclipse的 ...

  9. 或许你不知道(2):LinkedList

    一,基本的存储结构及数据存取 LinkedList与ArrayList同属List的范畴,ArrayList实现了RandomAccess接口,通过索引随机访问效率较高,而LinkedList提供了直 ...

  10. java调用http请求json

    最近遇到的问题,java如何调用http请求json: public class HttpClientUtil { private static final String CONTENT_TYPE_T ...