一、什么是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. Python: 函数参数小结

    参数的类型: 函数的参数有2种类型: 1. 函数定义时用于接收值的形式参数Parameters. 2. 函数调用时用于传递值的实际参数Arguments. 参数的传递: 传递方式有2种: 1. 值传递 ...

  2. 网络爬虫by pluskid

    网络爬虫(Web Crawler, Spider)就是一个在网络上乱爬的机器人.当然它通常并不是一个实体的机器人,因为网络本身也是虚拟的东西,所以这个“机器人”其实也就是一段程序,并且它也不是乱爬,而 ...

  3. iOS学习之Object-C语言属性和点语法

    一.属性      1.属性的声明:在.h文件中使用@property声明属性.           @property NSString *name;       2.属性的作用是生成setter以 ...

  4. 使用 Bumblebee 控制 NVIDIA 双显卡

    简介 Nvidia的双显卡切换技术叫Optimus(擎天柱),可惜只能在win7.vista下实现.Linux下没有对应的技术,当然苹果也没有.这导致独立显卡一直在启用,显卡发热升温,风扇狂转,却没有 ...

  5. Xcode7 beta 网络请求报错:The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.

    Xcode7 beta 网络请求报错:The resource could not be loaded because the App Transport Xcode7 beta 网络请求报错:The ...

  6. iOS开发多线程篇—单例模式(ARC)

    iOS开发多线程篇—单例模式(ARC) 一.简单说明: 设计模式:多年软件开发,总结出来的一套经验.方法和工具 java中有23种设计模式,在ios中最常用的是单例模式和代理模式. 二.单例模式说明 ...

  7. exception -----> Typedefs & Classes

    #include <exception> Typedefs exception_ptr 一种类型,描述了一个指向异常的指针 terminate_handler 一种类型,描述了一个适合作为 ...

  8. IIS 404.17 错误解决方案

    操作方法:在管理员身份打开命令行,运行以下命令: C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis -i

  9. 013--VS2013 C++ 地图贴图-其它格式图片

    //--------------------------------------------InitInstance() 函数------------------------------------- ...

  10. 26.68013 烧录方式 及iic生成

    硬件程序烧录 1)因为本产品要求将二进制代码和硬件PID/VID烧录在EEPROM,而不是使用CYPRESS推荐的在线下载方式,所以外部采用了8K的EEPROM.上电后68013A会将EEPROM中的 ...