根据安装方式的不同,Node.js包可分为两类:

  • 本地包(Local Packages)
  • 全局包(Global Packages)

本地包(Local Packages)

这些包安装在执行install命令的当前目录下,存储在当前目录下的node_modules文件夹中,只有当前目录下的项目才能使用。

下面是本地安装包的命令:

npm install <package-name>

全局包(Global Packages)

这些包安装在系统中的一个位置,与执行install命令的目录位置无关。全局包可以被系统中的任何项目使用。

要安装全局包包,可以使用以下命令:

npm install -g <package-name>

下面这些常用的包,通常会全局安装:

  • npm
  • create-react-app
  • vue-cli
  • grunt-cli
  • mocha
  • react-native-cli
  • gatsby-cli
  • forever
  • nodemon

本地包与全局包的区别

本地包和全局包之间的主要区别是,全局包用于多个项目,本地包仅用于单个项目。但是一般来说,本地安装包是一个很好的实践。因为系统中可能有许多Node.js项目,使用的包虽相同,但版本不同,本地安装可以避免版本冲突。

例如,如果更新一个全局包,所有依赖它的项目都会被影响,有可能部分项目与包的新版本不兼容。但是对于本地包,因为仅限于单个项目使用,所以本地包更新不会影响其他项目。就资源利用而言,本地安装似乎浪费硬盘空间,但是负面影响较小,毕竟硬件总是越来越便宜。

可以通过下面的命令,来检查系统中有多少全局包。

npm list -g --depth 0

如果想删除包,可以下命令:

npm uninstall <package_name>

安装包时,建议包含--save标志:

npm install <package_name> --save

作用是把安装的包添加到package.json文件中。

现在,你已经知道怎么安装、删除包。关于提到的package.json,将在下一章中介绍。

Node.js NPM 管理包的更多相关文章

  1. Node.js NPM 包(Package)

    章节 Node.js NPM 介绍 Node.js NPM 作用 Node.js NPM 包(Package) Node.js NPM 管理包 Node.js NPM Package.json 包是打 ...

  2. Node.js NPM Package.json

    章节 Node.js NPM 介绍 Node.js NPM 作用 Node.js NPM 包(Package) Node.js NPM 管理包 Node.js NPM Package.json Nod ...

  3. Node.js NPM 作用

    章节 Node.js NPM 介绍 Node.js NPM 作用 Node.js NPM 包(Package) Node.js NPM 管理包 Node.js NPM Package.json NPM ...

  4. Node.js NPM 教程

    NPM是Node.js的包(或模块)管理器,是Node.js应用程序开发的核心. www.npmjs.com上有海量的Node.js包,供免费下载使用. 当安装Node.js时,NPM程序会被同时安装 ...

  5. Node.js NPM 介绍

    章节 Node.js NPM 介绍 Node.js NPM 作用 Node.js NPM 包(Package) Node.js NPM 管理包 Node.js NPM Package.json NPM ...

  6. Node.js npm

    Node程序包管理器(NPM)提供了以下两个主要功能: 在线存储库的Node.js包/模块,可搜索 search.nodejs.org 命令行实用程序来安装Node.js的包,做版本管理和Node.j ...

  7. Mac 下搭建环境 homebrew/git/node.js/npm/vsCode...

    主要记录一下 homebrew/git/node.js/npm/mysql 的命令行安装 1. 首先安装 homebrew  也是一个包管理工具: mac 里打开终端命令行工具,粘下面一行回车安装br ...

  8. Node.js npm基础安装配置&创建第一个VUE项目

    使用之前,我们先来明白这几个东西是用来干什么的. node.js: 一种javascript的运行环境,能够使得javascript脱离浏览器运行.Node.js的出现,使得前后端使用同一种语言,统一 ...

  9. 自制node.js + npm绿色版

    自制node.js + npm绿色版   Node.js官网有各平台的安装包下载,不想折腾的可以直接下载安装,下面说下windows平台下如何制作绿色版node,以方便迁移. 获取node.exe下载 ...

随机推荐

  1. C#中集合接口关系笔记

    IEnumerable IEnumerable接口是所有集合类型的祖宗接口,其作用相当于Object类型之于其它类型.如果某个类型实现了IEnumerable接口,就意味着它可以被迭代访问,也就可以称 ...

  2. 16核锐龙9延期真正原因 A饭热情太恐怖了

    锐龙9 3950X处理器是AMD发布的首款16核游戏处理器,原本会在9月上市,上周末AMD官方宣布它会延期2个月上市,会在11月跟锐龙Threadripper三代处理器一起上市. 锐龙9 3950X的 ...

  3. Caused by: java.net.ConnectException: Connection timed out: connect

    发生这种情况的原因是:连接的路径发生错误

  4. 在CentOS中配置java jdk环境

    方法一. 1.查看yum库中都有哪些jdk版本(暂时只发现了openjdk) [root@localhost ~]# yum search java|grep jdkldapjdk-javadoc.x ...

  5. Spring事务服务

    Spring事务服务 (2013-07-22 11:13:36) 转载▼ 标签: 事务管理 ssh 分类: Sping Spring为事务管理提供了一流的支持.同时支持编程式事务和声明式事务.无论是编 ...

  6. C# WinForm 自定义控件,DataGridView背景透明,TabControl背景透明

     注意: 以下代码,属性直接赋值的语法糖要vs2015以上才支持.   using System.ComponentModel; using System.Drawing; using System. ...

  7. ROS 命令行工具的使用

    1.roscore 打开一个新的master(master:进程),只能运行一个,运行两个会报错,使用ROS第一步就是要打开roscore 2.rosrun rosrun的使用格式一般为:rosrun ...

  8. OKR-Periods of Words「POI 2006」

    题目描述 串是有限个小写字符的序列,特别的,一个空序列也可以是一个串.一个串 P 是串 A 的前缀,当且仅当存在串 B,使得 A = PB.如果 P != A 并且 P 不是一个空串,那么我们说 P  ...

  9. 第一单元总结:基于基础语言、继承和接口的简单OOP

    前情提要 到目前为止,OO课程已经完成了前三次的作业,分别为: 第一次作业:简单多项式的构造和求导.[正则表达式][数据结构][排序] 第二次作业:含三角函数因子的复杂多项式的构造.求导和化简.[递归 ...

  10. 未知进程问题,process information unavailable

    执行jps,有些未知进程: 2690 -- process information unavailable2666 原因:内存不足. cd /tmp/hsperfdata_impala/ 执行ll后, ...