Gulp JavaScript构建工具的用途是什么

Gulp JavaScript构建工具的用途是什么,gulp,build-tools,Gulp,Build Tools,最近我一直在学习Node.js。在这段时间里,我听说了很多关于使用Gulp或Grunt-In作为构建工具的事情。现在我对学习如何使用Gulp很感兴趣。我听说这是一个构建工具,但我不确定它涵盖了什么。使用像Gulp这样的构建工具来帮助我进行开发,我会做什么(什么样的任务)?一些例子会很好。吞咽(和咕噜)可以实现任务自动化 你发现自己在一个项目中重复做的几乎所有事情都可以通过gulp及其插件实现自动化,如果你找不到插件来完成这项工作,gulp只是一个Node.js应用程序,因此你可以快速编写自己的代

最近我一直在学习Node.js。在这段时间里,我听说了很多关于使用Gulp或Grunt-In作为构建工具的事情。现在我对学习如何使用Gulp很感兴趣。我听说这是一个构建工具,但我不确定它涵盖了什么。使用像Gulp这样的构建工具来帮助我进行开发,我会做什么(什么样的任务)?一些例子会很好。

吞咽(和咕噜)可以实现任务自动化

你发现自己在一个项目中重复做的几乎所有事情都可以通过gulp及其插件实现自动化,如果你找不到插件来完成这项工作,gulp只是一个Node.js应用程序,因此你可以快速编写自己的代码来完成这项工作

就示例而言,因为我自己是一个有棱角的web开发人员。我会给你们举一些前端开发用地的例子,但不要认为gulp仅限于这个区域。以下是一些例子:

  • 自动化构建过程(此处有一些子任务示例)
    • 把你所有的项目都转换成HTML、JavaScript、CSS,把它们连接起来并缩小它们
    • 自动将依赖项注入HTML文件
  • 侦听文件更改并在文件更改时运行任务
    • 每次添加JavaScript文件时,都需要将其添加到HTML文件中。这是可以自动化的
    • 每次保存JavaScript文件时,您都希望在其上运行jshint,以警告错误
    • 每次保存咖啡脚本文件时,您都希望它自动转换为JavaScript文件,并将该JavaScript文件包含到HTML文件中
  • 自动删除文件
  • 成千上万的其他事情
另一个有趣的好处是JavaScript生成工具(与java的Ant或Rails的RAKE相反),大多数Web应用程序都使用JavaScript,所以如果后端是java或Rails或C++,前端用户总是在JavaScript下高兴。这意味着,无论您使用哪种语言,您仍然使用JavaScript,这使得gulp等工具非常有趣,因为JavaScript和JavaScript经验保证存在于任何web开发团队中

我想我会及时更新,让它更清楚。在此之前,请看一看:了解一下通过gulp可以获得的一些易于获得的功能

下面是一个快速代码示例,它是一个“吞咽”任务,用于获取项目的图像并将其移动到dist文件夹中:

gulp.task('images', ['clean'], function () {
  return gulp.src('/src/assets/images/**/*')
    .pipe(gulp.dest('dist/assets/images/'));
});
任务可以链接在一起并相互依赖。注意任务“图像”是如何依赖于“清理”的。这意味着,如果您想运行“映像”,您的“清理”任务将在之前自动被调用。这允许您将任务链接在一起,以获得非常强大的可重用任务序列。下面是一个“干净”的例子:

gulp.task('clean', function (done) {
  del(['/dist'], done);
});

这是我通过谷歌搜索找到的一些随机页面。它包含一个非常清晰的CoffeeScript文件,其中包含前端项目中的gulp自动化任务示例:。

gulp JS是一个基于Javascript的工具,允许您自动化工作流中的任务。自动化确实可以增加你的产量。无论您是开发人员还是设计师,时不时地创建HTML线框,我们建议您深入研究


构建工具是应用程序开发的资产。几年前,项目经理在开发人员后面跑来跑去,要求他们清理代码、去除代码、提高应用程序的性能等,这是很常见的

开发人员通常的做法是为生产环境复制一份“开发”环境代码,并执行所需的操作。开发人员将使用第三方软件或应用程序来帮助清理代码,例如删除不必要的注释、缩小文件的总体大小,从而减少应用程序、连接文件以便减少服务器的点击次数、执行单元测试等等

像Gulp和Grunt这样的构建系统所做的是在几秒钟内自动完成上述所有任务。这些构建系统具有特定的插件,可以进行浓缩、缩小、linting、特定于环境的开发等。所有这些任务一次完成,执行所需的操作,然后从新生成的生产代码运行应用程序

使用构建系统的优点是,它在更大程度上加快了应用程序的页面加载时间。您的代码更干净、更小,同时遵循最佳编码实践。反过来,你可以节省很多时间,这些时间都花在了每项任务上


它们非常容易使用,应该在应用程序开发中使用。:-)

那么,
npm安装
是通过gulp运行的理想任务吗?我不明白为什么会有问题,但请不要相信我的话。。。你为什么认为这会是个问题?为什么您需要在任务中安装npm?感谢@Cosmin用简单明了的英语解释这个概念。感谢。:)