为什么我们需要在全局和本地安装 gulp?

Why do we need to install gulp globally and locally?(为什么我们需要在全局和本地安装 gulp?)
本文介绍了为什么我们需要在全局和本地安装 gulp?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

2 个关于 gulp 的手册说我需要先全局安装 gulp(使用 -g 标志),然后再安装一个当地时间.为什么我需要这个?

2 manuals about gulp say that I need to install gulp first globally (with -g flag) and then one more time locally. Why do I need this?

推荐答案

在全局安装工具时,用户可以在任何地方将其用作命令行实用程序,包括节点项目之外.节点项目的全局安装不好,因为它们使部署更加困难.

When installing a tool globally it's to be used by a user as a command line utility anywhere, including outside of node projects. Global installs for a node project are bad because they make deployment more difficult.

npxnpm 5.2 捆绑在一起的实用程序解决了这个问题.使用它,您可以调用本地安装的实用程序,如全局安装的实用程序(但您必须以 npx 开头命令).例如,如果你想调用一个本地安装的 eslint,你可以这样做:

The npx utility bundled with npm 5.2 solves this problem. With it you can invoke locally installed utilities like globally installed utilities (but you must begin the command with npx). For example, if you want to invoke a locally installed eslint, you can do:

npx eslint .

npm

5.2

当在 package.json 的 script 字段中使用时,npm 会在 node_modules 中搜索工具以及全局安装的模块,因此本地安装就足够了.

npm < 5.2

When used in a script field of your package.json, npm searches node_modules for the tool as well as globally installed modules, so the local install is sufficient.

所以,如果您对(在您的 package.json 中)感到满意:

So, if you are happy with (in your package.json):

"devDependencies": {
    "gulp": "3.5.2"
}
"scripts": {
    "test": "gulp test"
}

等等.并使用 npm run test 运行,那么您根本不需要全局安装.

etc. and running with npm run test then you shouldn't need the global install at all.

这两种方法对于让人们设置您的项目很有用,因为不需要 sudo.这也意味着 gulp 将在 package.json 中的版本发生碰撞时更新,因此每个人在使用您的项目开发时都将使用相同版本的 gulp.

Both methods are useful for getting people set up with your project since sudo isn't needed. It also means that gulp will be updated when the version is bumped in the package.json, so everyone will be using the same version of gulp when developing with your project.

gulp 在全局使用时似乎有一些不寻常的行为.当用作全局安装时,gulp 会查找本地安装的 gulp 以传递控制权.因此,gulp 全局安装需要 gulp 本地安装才能工作.上面的答案仍然有效.本地安装总是优于全局安装.

It appears that gulp has some unusual behaviour when used globally. When used as a global install, gulp looks for a locally installed gulp to pass control to. Therefore a gulp global install requires a gulp local install to work. The answer above still stands though. Local installs are always preferable to global installs.

这篇关于为什么我们需要在全局和本地安装 gulp?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

How do I can get a text of all the cells of the table using testcafe(如何使用 testcafe 获取表格中所有单元格的文本)
node_modules is not recognized as an internal or external command(node_modules 未被识别为内部或外部命令)
How can I create conditional test cases using Protractor?(如何使用 Protractor 创建条件测试用例?)
PhantomJS and clicking a form button(PhantomJS 并单击表单按钮)
Clicking #39;OK#39; on alert or confirm dialog through jquery/javascript?(在警报上单击“确定或通过 jquery/javascript 确认对话框?)
QunitJS-Tests don#39;t start: PhantomJS timed out, possibly due to a missing QUnit start() call(QunitJS-Tests 不启动:PhantomJS 超时,可能是由于缺少 QUnit start() 调用)