hello gulp,使用gulp的第一天。

  昨天花了一天的时间,学习了一下gulp,今天整理一下,也分享给朋友们。
  首先固然是去gulp的官网逛一圈了:
  http://gulpjs.com/
  中文站地址:
  http://www.gulpjs.com.cn/
  里边有入门指南,以下:
  
  1. 全局安装 gulp:javascript

$npm install --global gulp

  
  2. 在项目根目录建立package.json文件,能够手动建立,也能够用这行命令自动化完成:
  php

$ cd <yourworkspacePath>
$ npm init

  3. 做为项目的开发依赖(devDependencies)安装css

$ npm install --save-dev gulp

  4. 在项目根目录下建立一个名为 gulpfile.js 的文件:html

var gulp = require('gulp');
gulp.task('default', function() {
  // 将你的默认的任务代码放在这
  console.log("hello gulp!");
});

  5. 运行 gulpjava

$ gulp

  不过仍是要有一些细节须要注意
  1.在windows环境下命令固然就不要加那个$符号了。
  
  2.网上还有一种npm install –global gulp-cli这种全局安装的方法,那么gulp和gulp-cli有什么不一样呢?答案在这里:
  http://stackoverflow.com/questions/35571679/what-does-gulp-cli-stands-forwebpack

  3.为何要在全局装一个gulp又要在本地项目装一个gulp呢?
  由于方便版本控制。不一样的项目可使用不一样版本的gulp而不互相影响,就是这样喽。
  
  等等,等等,很容易走到这里的我,仍是没搞懂一件事,咱们为何要用gulp。为何不是grunt而是gulp。还有一些类似的功能的webpack,为何是gulp!因而,我查到了这些:
  为何是gulp不是grunt
  http://slides.com/contra/gulp#/
  gulp跟webpack又是啥关系:
  https://www.zhihu.com/question/37020798(感谢知乎)
  若是这些都不是你关心的问题,你多是想问:为啥要用gulp或者grunt
  借用grunt中文网的一句话:自动化。对于须要反复重复的任务,例如压缩(minification)、编译、单元测试、linting等,自动化工具能够减轻你的劳动,简化你的工做。
  
  好了,解决了这么多个为何之后,咱们继续gulp的学习之旅。就在刚刚,咱们已经装好了gulp,那么咱们下面就开始咱们的工做吧。
  假如说,咱们须要给js文件进行压缩这样一件事,那么咱们最原始的方式,能够把代码拷贝到压缩工具里,而后让工具压缩了,咱们再拷出来放到咱们的工程里。若是用gulp的话呢,咱们就能够不用这么麻烦了,咱们只须要作这几件事:
  
  1.安装gulp的js压缩插件
  npm install –save-dev gulp uglify
  (你们应该注意到了吧,–save-dev的意思就是把这个插件的安装信息写入到咱们的package.json文件里的意思)
  
  2.在gulpfile.js里配置任务web

var gulp = require('gulp'),
    uglify = require('gulp-uglify');
gulp.task('compile-js',function(){
    return gulp.src(<你要压缩的js文件路径>) .pipe(uglify()) .pipe(gulp.dest(<你要输出的文件路径>)); });

  写好之后,运行 gulp compile-js
  这样看是否是很简单,哈哈。你可能以为,这没那么简单啊,还要写代码,好麻烦。那是由于你只压缩了一个文件啊,若是让你压缩十个以上的文件,在压缩工具里拷贝来拷贝去都会弄错吧,可是若是用gulp,工做量一点都没有增长,仍是这一小段代码就搞定。一样的,css,html的压缩,sass的解译均可以在这里完成,相比之前用多个工具软件切来切去方便的就不是一点半点了。
  
  固然啦,这里边仍是有一些小坑的哦。首先是gulp的api你须要学习,要否则你怎么知道怎么建任务,怎么制定源文件和目标文件呢。
  http://www.gulpjs.com.cn/docs/api/
  这个小栗子就完了,不过呢,还有一些经常使用的功能,对应一些经常使用的插件,来作介绍:
  http://www.cnblogs.com/2050/p/4198792.html
  上边这篇文章的第四部分,插件部分讲的很好哦。npm

  而后就是一些小技巧,好比说watch和changed的事:
  http://www.tuicool.com/articles/2miAvyu
  上边这篇文章是一篇踩坑文,感谢朋友们的分享。
  
  还有一个小技巧,那就是如何删掉某一个插件,就好比你某个插件装坏了,或者你不须要了,你就这样:
  npm uninstall –save <插件全名>
  好比咱们刚才的gulp-uglify
  npm uninstall –save gulp-uglify
  感谢网友们的无私分享!json

相关文章
相关标签/搜索