gulp学习笔记3
gulp系列学习笔记:
1、编译sass
Sass 是一种 CSS 的开发工具,提供了许多便利的写法,大大节省了开发者的时间,使得 CSS 的开发,变得简单和可维护。
安装相应的模块:
- npm install gulp-ruby-sass
在 gulpfile.js
文件编写如下代码:
- / 获取 gulp
- var gulp = require('gulp')
- // 获取 gulp-ruby-sass 模块
- var sass = require('gulp-ruby-sass')
- // 编译sass
- // 在命令行输入 gulp sass 启动此任务
- gulp.task('sass', function() {
- return sass('sass/')
- .on('error', function (err) {
- console.error('Error!', err.message);
- })
- .pipe(gulp.dest('dist/css'))
- });
此时在命令行输入:
- gulp sass
将sass文件夹下的.sass文件编译放到dist/css文件夹下。
2、检查js代码
JSHint(http://www.jshint.com/)是一个JavaScript语法和风格检查工具,你可以用它来提醒代码风格相关的问题。
同样的,我们也需要相应的代码:
- npm install gulp-jshint --save-dev
然后我们在配置文件编写相对应的代码:
- // 包含gulp
- var gulp = require('gulp');
- // 包含gulp-jshint插件
- var jshint = require('gulp-jshint');
- // jshint 任务建立
- gulp.task('jshint', function() {
- gulp.src('./src/scripts/*.js')
- .pipe(jshint())
- .pipe(jshint.reporter('default'));
- });
此时在命令行输入:
- gulp jshint
你会看到如下输出:
- [gulp] Using file D:\test\gulpfile.js
- [gulp] Working directory changed to D:\test
- [gulp] Running 'jshint'...
- [gulp] Finished 'jshint' in 8.24 ms
- D:\test\src\scripts\lib.js: line 2, col 20, Missing semicolon.
- 1 error
这里显示lib.js的文件有个错误。然后你照着修改就可以了。
3、压缩html
为了节省流量和提高页面的加载速度,同样的,我们可以对html也进行压缩。
安装相应的模块:
npm install gulp-minify-html --save-dev
在 gulpfile.js
文件编写如下代码:
- // 包含插件
- var minifyHTML = require('gulp-minify-html');
- // minify new or changed HTML pages
- gulp.task('htmlpage', function() {
- gulp.src('./src/*.html')
- .pipe(minifyHTML())
- .pipe(gulp.dest('./dist'));
- });
此时在命令行输入:
- gulp htmlpage
将src文件夹下的.html文件编译放到dist文件夹下。
3、
4、只编译修改的文件
在前面的那些任务当中,当你只修改其中一个文件的话,其实所有的文件都会被重新编译一次。当编译的文件比较多的时候,所需要的时间就会大大增加。这时候,我们就要用到一个新的插件 gulp-changed.
安装插件:
- npm install --save-dev gulp-changed
这里借用前面的图片压缩来说明,编写代码:
- var changed = require('gulp-changed');
- var imagemin = require('gulp-imagemin');
- // 压缩新图片
- gulp.task('imagemin', function() {
- var imgSrc = './src/images/**/*',
- imgDst = './dist/images';
- gulp.src(imgSrc)
- // 发现有新图片
- .pipe(changed(imgDst))
- // 压缩
- .pipe(imagemin())
- // 保存
- .pipe(gulp.dest(imgDst));
- });
此时在命令行输入:
- gulp imagemin
将src/images文件夹下的图片压缩到dist/images文件夹下。
文章参考了以下资料:
1、gulp详细入门教程: http://www.ydcss.com/archives/18;
2、gulp API 文档: http://www.gulpjs.com.cn/docs/api/;
3、gulp 入门指南: https://github.com/huanshen/gulp-book;
4、An Introduction to Gulp.js: https://www.sitepoint.com/introduction-gulp-js/
gulp学习笔记3的更多相关文章
- gulp学习笔记4
gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 之前的任务都是单个的,比较简单.接下去我们开始引用多个插件,一次性把任务搞定,省 ...
- gulp学习笔记1
gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 1.安装gulp 首先我们需要node环境,nodejs安装这里就不说了,不懂的 ...
- gulp学习笔记2
gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 1. 压缩 CSS 压缩 css 代码可降低 css 文件大小,提高页面打开速度 ...
- 前端自动化构建工具 gulp 学习笔记 一、
一.我对gulp的初期理解 是一种前端辅助开发工具 可以帮你把js,css,img等文件 合并.压缩,图片好像是合并为精灵图,合并为精灵图之后,还会生成一个css样式表. 官方解说是:基于流的自动化构 ...
- gulp 学习笔记
以这次学习gulp为契机来同时了解和学习node相关的知识和概念,比如 npm,package.json等,为以后学习node打好基础. 目录 npm 查看模块 安装模块 ...
- gulp学习笔记——最好的学习文档是官网
官网:http://www.gulpjs.com.cn/docs/api/ 当然还有一个博客写的也很好,当我看不下去官网的时候,这个帮助了我很多,明了易懂:http://www.ydcss.com/a ...
- gulp学习笔记
第一步:安装Node 首先,gulp 是基于 Nodejs 的自动任务运行器,所以安装gulp之前,最基本也最重要的是,我们需要搭建node环境.访问http://nodejs.org,下载并安装No ...
- gulp 学习笔记 (初识)
根据极客学院入门视频整理 一.gulp介绍,主要提到了gulp是基于流式来管理运行的,目前完全搞不懂这一套专业术语. 二.gulp的安装使用. 1.首先需要在全局环境下安装gulp npm insta ...
- gulp学习笔记2-安装
安装nodejs -> 全局安装gulp -> 项目安装gulp以及gulp插件 -> 配置gulpfile.js -> 运行任务 1.去nodejs官网安装nodejs 2. ...
随机推荐
- Elasticsearch refresh vs. flush【转载】
源地址: http://www.jianshu.com/p/0e9f6346f1fe 问: 若一个新的文档索引进ES索引,则它在索引操作执行后约1s可以搜索到.然而我们可以直接调用_flush或 ...
- 关于Beam Search
Wiki定义:In computer science, beam search is a heuristic search algorithm that explores a graph by exp ...
- win7下安装mysql
(1)官网下载mysql: http://dev.mysql.com/downloads/mysql/ (2)解压后,进入到该目录下,将my-default.ini文件复制一份改名为my.ini 打开 ...
- snmp switch traffic交换机带宽
上代码 <?php function getstr1($strall,$str1,$str2,$html_charset='utf-8'){ $i1=mb_strpos($strall,$str ...
- DB2不记录事务日志
1. DB2大数据处理不记录事务日志步骤: 建表需要添加属性“NOT LOGGED INITIALLY” 在大批量更改操作的同一个事务开始时执行:“ALTER TABLE tabname ACTI ...
- Docker生产环境实践指南
技术栈:1. 构建系统2. 镜像仓库3. 宿主机管理4. 配置管理5. 部署6. 编排7. 日志8. 监控 镜像:1. 如果用户像往常一样运行包安装命令,这些永远也用不上的缓存包文件将会永远地成为镜像 ...
- Pig Hive对比(zz)
Pig Latin:数据流编程语言 一个Pig Latin程序是相对于输入的一步步操作.其中每一步都是对数据的一个简单的变换. 用Pig Latin编程更像在RDBMS中“查询规划器”(query p ...
- 为AM335x移植Linux内核主线代码(35)使用platform中的GPIO
http://www.eefocus.com/marianna/blog/15-02/310352_46e8f.html 使用GPIO,当然可以自己编写驱动,比如之前的第34节,也可以使用Kernel ...
- Git使用文档
建立项目 新建项目 进入gitlab.dev(192.168.14.28) 选择LDAP,用自己的域账号登录 点击右上角的 加号(+)新建项目 填写项目名称 选择组为 Online_Web “Visi ...
- Linux上设置nginx支持https
1.前提条件 如果系统没有自带openssl,则需要安装. 2.生成证书 # .首先,进入你想创建证书和私钥的目录,例如: cd /etc/nginx/ # .创建服务器私钥,命令会让你输入一个口令: ...