位置: 编程技术 - 正文

Nodejs全局安装和本地安装的不同之处(node 全局安装)

编辑:rootadmin

推荐整理分享Nodejs全局安装和本地安装的不同之处(node 全局安装),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodemon全局安装,node.js的全局变量,node 全局安装,node.js的全局变量,nodemon全局安装,nodejs全局模块安装在哪里,nodejs全局对象有哪些,node 全局安装,内容如对您有帮助,希望把文章链接给更多的朋友!

上一篇文章《Nodejs中 npm常用命令详解》主要是整理了最常使用的npm命令及相关介绍,其中有提到全局安装(npm install gulp -g)和本地安装(npm install gulp),下图来自Gulp中文网入门指南,可以看出全局安装后gulp后还要进行本地安装,一开始我疑惑了?为什么全局安装的gulp么,还要进行本地安装,难道不能在项目中直接调用本地安装的包?

带着疑惑,在google找了相关文档,杂七杂八凑合起来才有了点眉目,让我们一起解开nodejs全局安装和本地安装的一些疑惑,如果有讲错的地方,还请大家留意指正。

本文以Windows平台上做测试,以gulp为示例做教程

什么是全局安装(global)安装位置

全局安装方式是键入命令:npm install gulp -g 或npm install gulp--global,其中参数-g的含义是代表安装到全局环境里面,包安装在Node安装目录下的node_modules文件夹中,一般在 Users用户名AppDataRoaming 目录下,可以使用npm root -g查看全局安装目录。

调用方式

全局安装后可以供命令行(command line)使用,用户可以在命令行中直接运行该组件包支持的命令,如下图全局安装gulp后的cmd文件

什么是本地安装(local)安装位置

本地安装方式是键入命令:npm install gulp 或npm install gulp --save-dev等,其中参数--save-dev的含义是代表把你的安装包信息写入package.json文件的devDependencies字段中,包安装在指定项目的node_modules文件夹下。

调用方式

本地安装后可以直接通过require()的方式引入项目中node_modules目录下的模块,如下示例,本地安装后直接在gulpfile.js中require('gulp')。

Nodejs全局安装和本地安装的不同之处(node 全局安装)

为什么全局安装后还要本地安装

仅全局安装是够吗

1.在js实例代码中,默认下node.js会在NODE_PATH和目前js所在项目下的node_modules文件夹下去寻找模块,因此,如果只是全局安装,不能直接通过require()的方式去引用模块,需要手动解决包路径的配置问题,当然你也可以复制全局安装的node_modules文件夹到项目下,还有办法可以选择将环境变量的NODE_PATH设置为C:Program Filesnodejs。

2.对于包的更新不好管理,可能你需要为每个包重新命名,如gulp@3.8.1、gulp@3.9.1...,为了区别不同项目使用指定的包,保证模块之间的相互依赖(这块下面会介绍),区别每个项目正常运行。

因此,不推荐只全局安装。

本地安装的重要性

最早的node.js/npm实际上是全局的,包括现在还兼容NODE_PATH,但是不能支持全局多版本,于是nodejs团队改成本地安装的方法可能就是为了保证不同版本包之间的相互依赖,什么意思呢,举个例子weui组件中相互依赖的包就有个

其中依赖包的指定版本号如下,不可轻易去修改,因为不同版本包对应依赖包的版本的功能有所差别,如果修改指定的版本来运行weui,就可能会编译出错等bug。

再举个例子:

每一次的更新可能带来不一样的功能,在多人合作、发布模块到npmjs社区、上传到github给其他人使用时,保留模块的版本信息可用于下载指定的版本号显得特别重要。

本地安装可以让每个项目拥有独立的包,不受全局包的影响,方便项目的移动、复制、打包等,保证不同版本包之间的相互依赖,这些优点是全局安装难以做到的。

另外,据node团队介绍,本地安装包对于项目的加载会更快。

有优点也少不了缺点,如每次新项目都要本地安装所依赖的包,安装包时间相对较长,一来是包太大导致下载慢;二是浪费了硬盘空间,不过现在电脑硬盘动不动就几个T,你还会在意节省这点空间吗?

以上所述是小编给大家介绍的Nodejs全局安装和本地安装的不同之处,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对积木网网站的支持!

Nodejs中 npm常用命令详解 npm是什么NPM的全称是NodePackageManager,是随同NodeJS一起安装的包管理和分发工具,它很方便让JavaScript开发者下载、安装、上传以及管理已经安装的包。npm

Node.js实现文件上传 在工作中碰到了这样的需求,需要用nodejs来上传文件,之前也只是知道怎么通过浏览器来上传文件,用nodejs的话,相当于模拟浏览器的行为。google了一

深入解析桶排序算法及Node.js上JavaScript的代码实现 1.桶排序介绍桶排序(Bucketsort)是一种基于计数的排序算法,工作的原理是将数据分到有限数量的桶子里,然后每个桶再分别排序(有可能再使用别的排序

标签: node 全局安装

本文链接地址:https://www.jiuchutong.com/biancheng/370752.html 转载请保留说明!

上一篇:Node.js Streams文件读写操作详解(nodejs writestream)

下一篇:Nodejs中 npm常用命令详解(nodejs nodemon)

  • 减资需要交个税吗
  • 资产减值损失纳税调增还是调减
  • 车辆商业险和强制险交完给退么
  • 综保区和自贸区的联系
  • 自然人管理系统银行信息
  • 企业公益金账务的会计处理怎么做
  • 付了定金一定会有货吗
  • 购买基金会计分录怎么填
  • 合并报表的抵消分录要做账吗
  • 生产事故造成怎么样赔付
  • 在建工程购入的空调怎样入账
  • 企业更名后账务如何处理
  • 为什么收到的劳务费税点打星号?
  • 普票冲红可以部分冲红吗
  • 增值税专用发票可以开电子发票吗
  • 一般纳税人增值税及附加税费申报表怎么填
  • 以前的员工怎么交社保
  • 计提工资当月要结转吗?
  • 企业所得税投资收益纳税调整
  • 合同条款签订
  • element plus 虚拟化表格
  • 没有抵扣的增值税怎么做账
  • 退税到账怎么做账
  • icons是什么文件夹
  • 摩洛哥首都拉巴特简介
  • 鱼湖国家森林中心在哪里
  • 冈山平原
  • 家具折旧费是什么意思
  • 啥叫同比增长
  • 外购产品会计分录
  • 应收票据影响现金流吗
  • 葡萄酒企业已纳税多少
  • 物业费可以分期付款吗
  • ajax向php传值
  • 提取法定盈余公积会计科目
  • php 字符串处理函数
  • win11装双系统虚拟机mac
  • 一文看懂华为新品发布会
  • 数据挖掘快速入门
  • 固定资产毁损应该填制什么凭证
  • 适用于windows7的更新程序会更新到windows10吗
  • 帝国cms如何设置最新
  • 长期待摊费用如何处理
  • 当天的电子发票怎么开
  • 股东借款转增资本公积要验资吗
  • php sleep()
  • dedecms建站操作
  • 平行结转分步法的特点
  • 运输费用会计
  • 电子承兑汇票贴现怎么做账
  • 科研项目财政拨款怎么算
  • 以前年度差旅费退回
  • 委托收款和托收承付结算流程图
  • 外地预缴怎么算
  • 兼职员工对公司的好处
  • 应交税费属于什么科目借方
  • 专项补助资金的账务处理
  • 如何理解预付年金终值期数和系数和记忆方法
  • 未达到起征点的税金怎么做凭证
  • 企业内部银行转账怎么记账
  • 无形资产管理的特点
  • 其他货币资金包含的内容
  • MySQL 5.6 中 TIMESTAMP有那些变化
  • 任务栏都不见了
  • win8恢复出厂设置方法
  • 怎么创建关机快手号
  • centos mail命令
  • 微软系统如何恢复出厂设置
  • 根据显示的图的照片吊坠
  • Tips(1)glewExperimental
  • opengl常用函数库
  • linux命令行怎么用
  • 如何使用wordpress
  • JavaScript基础语法详解
  • 安卓自动登录脚本
  • 企业员工可以放弃购买社保吗
  • 营改增后一般纳税人动产租赁税率
  • 湖北省电子税务局操作指南
  • 社保征管职责是什么
  • 建设工程造价咨询合同需要交印花税吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设