如何安装本地包

有两种方式用来安装 npm 包:本地安装和全局安装。至于选择哪种方式来安装,取决于我们如何使用这个包。

  • 如果你自己的模块依赖于某个包,并通过 Node.js 的 require 加载,那么你应该选择本地安装,这种方式也是 npm install 命令的默认行为。
  • 如果你想将包作为一个命令行工具,(比如 grunt CLI),那么你应该选择全局安装

想要了解更多关于 install 命令行的行为,可以查看 CLI 文档

安装一个包

安装

可以使用下面的命令来安装一个包:npm install <package_name>

上述命令执行之后将会在当前的目录下创建一个 node_modules 的目录(如果不存在的话),然后将下载的包保存到这个目录下。

测试:

为了确认 npm install 是正常工作的,可以检查 node_modules 目录是否存在,并且里面是否含有你安装的包的文件夹。

实例:

安装一个叫做 lodash 的包。安装成功之后,如果 node_modules 目录下存在一个名为 lodash 的文件夹,则说明成功安装了这个包。

Microsoft Windows:

C:\ npm install lodash

C:\ dir node_modules #=> lodash

macOS, Ubuntu, Debian

> npm install lodash
> ls node_modules #=> lodash

哪个版本的包会被安装了?

在本地目录中如果没有 package.json 这个文件的话,那么最新版本的包会被安装。

如果存在 package.json 文件,则会在 package.json 文件中查找针对这个包所约定的语义化版本规则,然后安装符合此规则的最新版本。

使用已安装的包

一旦将包安装到 node_modules 目录中,你就可以使用它了。比如在你所创建的 Node.js 模块中,你可以 require 这个包。

实例:

创建一个名为 index.js 的文件,并保存如下代码:

// index.js
var lodash = require('lodash');
 
var output = lodash.without([1, 2, 3], 1);
console.log(output);

运行 node index.js 命令。应当输出 [2, 3]

如果你没能正确安装 lodash,你将会看到如下的错误信息:

module.js:
throw err;
^
Error: Cannot find module 'lodash'

可以在 index.js 所在的目录中运行 npm install lodash 命令来修复这个问题。

如何更新本地安装的包

定期更新你的应用所依赖的包(package)是个好习惯。因为依赖包的开发者更新了代码,你的应用也就能够获得提升。

为了完成这个任务需要:

  1. 在 package.json 文件所在的目录中执行 npm update <package> 命令。
  2. 执行 npm outdated 命令。不应该有任何输出。此命令将检查注册表,以查看当前是否有任何(或特定的)已安装的包过期。

如何卸载本地安装的包

如需删除 node_modules 目录下面的包(package),请执行:npm uninstall <package>

如需从 package.json 文件中删除依赖,需要在命令后添加参数 --save也就是是:npm uninstall --save <package>

注意:如果你将安装的包作为 "devDependency"(也就是通过 --save-dev 参数保存的),那么 --save 无法将其从 package.json 文件中删除。所以必须通过 --save-dev 参数可以将其卸载,也就是npm uninstall --save-dev <package>

试一试:

为了确定 npm uninstall 命令执行成功,请找到 node_modules 目录,并在此目录下检查你所卸载的包(package)所对应的目录是否消失了。

通过如下命令:

  • ls node_modules 在 Unix 系统中使用,例如 "OSX"
  • dir node_modules 在 Windows 系统中使用。

实例:

安装 lodash。为了确认安装成功,请检查 node_modules 目录下是否存在 lodash 目录。

通过 npm uninstall 命令卸载 lodash。为了确认执行成功,请检查 node_modules 目录下不存在 lodash 目录。

安装 Lodash
npm install lodash
> dir node_modules # Unix 系统使用 `ls node_modules` 命令
卸载 Lodash
#=> lodash

> npm uninstall lodash
> dir node_modules # Unix 系统使用 `ls node_modules` 命令 #=>

npm学习(三)之如何安装本地包、更新本地安装的包、卸载本地安装的包的更多相关文章

  1. Nuget包里的依赖包更新到最新版本会不会随主包回滚到旧包的研究

    A包中有几个依赖包:A-1包,版本:>=1.0:但是我项目上已经引用了A-1包的2.0版本,那么我添加A包的时候,不会将A-1包2.0版本改成1.0版本,会直接用2.0版本的.

  2. Salesforce LWC学习(三十八) lwc下如何更新超过1万的数据

    背景: 今天项目组小伙伴问了一个问题,如果更新数据超过1万条的情况下,有什么好的方式来实现呢?我们都知道一个transaction只能做10000条DML数据操作,那客户的操作的数据就是超过10000 ...

  3. Linux CentOS 6.5 卸载、安装JDK1.8

    卸载系统自带的jdk 1. 查询系统是否已经安装了jdk rpm -qa|grep java 2. 卸载已安装的jdk, 系统可能会自带多个jdk版本, 按需卸载 rpm -e --nodeps ja ...

  4. npm学习(四)之如何安装全局包、更新全局安装的包、卸载全局安装的包

    如何安装全局包 有两种方式用来安装 npm 包:本地安装和全局安装.选用哪种方式来安装,取决于你如何使用这个包. 如果你想将其作为一个命令行工具,那么你应该将其安装到全局.这种安装方式后可以让你在任何 ...

  5. docker学习(三) 安装docker的web可视化管理工具

    1.docker是一个一款很轻便的应用容器引擎,为了更好的管理和使用docker,使用web可视化管理工具似乎更符合大多数人的需求.在这里,我给大家分享下自己使用过的几款web工具:docker UI ...

  6. 利用npm安装/删除/发布/更新/撤销发布包 --社会我npm哥,好用话不多

      一.什么是npm? npm是javascript的包管理工具,是前端模块化下的一个标志性产物 简单地地说,就是通过npm下载模块,复用已有的代码,提高工作效率   1.从社区的角度:把针对某一特定 ...

  7. NPM 学习笔记整理

    NPM 学习笔记整理 阅读 550,2017年06月04日 发布,来源:blog.ihoey.com 什么是 NPM npm 之于 Node ,就像 pip 之于 Python , gem 之于 Ru ...

  8. npm 学习笔记

    一.介绍 1.是什么 npm 全称是 Node Package Manager,即 Node 包管理工具. 但是发展到后来,并不仅是适用于 node.js 的包. 所以现在看 node_modules ...

  9. npm 安装/删除/发布/更新/撤销 发布包

    目录 一. npm安装包 1.1 什么时候用本地/全局安装? 1 当你试图安装命令行工具的时候,例如 grunt CLI的时候,使用全局安装 2. 当你试图通过npm install 某个模块,并通过 ...

随机推荐

  1. Spring boot之返回json数据

    1.步骤: 1. 编写实体类Demo 2. 编写getDemo()方法 3. 测试 2.项目构建 编写实体类Demo package com.kfit; /** * 这是一个测试实体类. */ pub ...

  2. 关于JavaScript的内存机制

    一.背景 var a = 20; var b = 'abc'; var c = true; var d = { m: 20 } 因为JavaScript具有自动垃圾回收机制,所以对于前端开发来说,内存 ...

  3. android 模糊背景 异型背景

    模糊算法参考: http://blog.csdn.net/markl22222/article/details/10313565 网上很多,这东西是个概念理解,没有什么新鲜的. 轮子有现成的,模糊算法 ...

  4. 【剑指offer37】二叉树的序列化

    序列化过程很简单,如果是采用先序序列,那么对先序遍历做出改变即可: 层序遍历建立二叉树,如: 1 2        3 4   #     5   6 输入第一行:将要输入的节点的个数N,如上面的为7 ...

  5. Jenkins发布

    右键查看图片显示全图

  6. Linux_系统破坏性修复实验

    目录 目录 修改系统用户密码 grub修复 系统修复 最后 修改系统用户密码 随便介绍一个修改Linux系统用户密码的方法. 步骤: 开机读秒时按任意键 进入grub列表项配置按e 选择系统kerne ...

  7. 2 Configuring SAP ERP Sales and Distribution -introduction to SAP

    First Steps in SAPWe’ll now discuss some of the basic menus, screens, and transactions that you need ...

  8. delphi ASCII码表及键盘码表

    ASCII码表 ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符 0 NUT 32 (space) 64 @ 96 . 1 SOH 33 ! 65 A 9 ...

  9. shell历史命令

    1.每分钟备份历史命令 制定计划任务:每分钟执行备份历史命令的脚本 注意:要用python写计划任务脚本,因为用shell脚本写的计划任务总是不执行 先写脚本: [root@master ~]# ca ...

  10. scanf("%[^\n]",str)

    题目地址 scanf()   遇到空格结束输入 可以用 scanf("%[^\n]" , str)   输入一行数据包括空格,直到遇到换行符 ' \n ' #include< ...