当前位置: 首页 > news >正文

node.js的npm详解

一、什么是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

显示如下:

 


 

转载于:https://www.cnblogs.com/duhuo/p/4481251.html

相关文章:

  • 求一个n!中尾数有多少个零
  • 扫描之家:RFID技术可以应用在哪些方面?
  • 设置myeclipse自动生成的author等注释
  • equals和==的区别
  • go 安装下载
  • web和APP测试区别
  • 作为一个it码农一天不学习你会不会觉得心里不安
  • C++:成员函数实现在类定义中与在类定义外的区别
  • php实现多线程
  • 跨平台开发相关资料
  • linux下安装apache
  • 【瑜伽520】开源虚拟机 VirtualBox 5.0 Beta 3 发布
  • UI设计中有哪些常见问题需要避免?
  • js实现图片自动切换效果。
  • 2019-06-11 Java学习日记之Bootstrap
  • [LeetCode] Wiggle Sort
  • [分享]iOS开发-关于在xcode中引用文件夹右边出现问号的解决办法
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • Koa2 之文件上传下载
  • Leetcode 27 Remove Element
  • Linux后台研发超实用命令总结
  • MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
  • uni-app项目数字滚动
  • uva 10370 Above Average
  • Vim Clutch | 面向脚踏板编程……
  • Wamp集成环境 添加PHP的新版本
  • Zsh 开发指南(第十四篇 文件读写)
  • 电商搜索引擎的架构设计和性能优化
  • 分享自己折腾多时的一套 vue 组件 --we-vue
  • 欢迎参加第二届中国游戏开发者大会
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 思考 CSS 架构
  • 微信开源mars源码分析1—上层samples分析
  • 物联网链路协议
  • 字符串匹配基础上
  • 湖北分布式智能数据采集方法有哪些?
  • # 20155222 2016-2017-2 《Java程序设计》第5周学习总结
  • # C++之functional库用法整理
  • ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTr
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (8)Linux使用C语言读取proc/stat等cpu使用数据
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)springboot家庭装修管理系统 毕业设计 613205
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (十)DDRC架构组成、效率Efficiency及功能实现
  • (十三)Flask之特殊装饰器详解
  • (转) RFS+AutoItLibrary测试web对话框
  • (转)chrome浏览器收藏夹(书签)的导出与导入
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • (转)Linux下编译安装log4cxx
  • (转)Mysql的优化设置
  • (转)机器学习的数学基础(1)--Dirichlet分布
  • (转贴)用VML开发工作流设计器 UCML.NET工作流管理系统