Skip to content

Commit c334c4f

Browse files
committed
add gulp-demo
1 parent 9353801 commit c334c4f

File tree

11 files changed

+11461
-0
lines changed

11 files changed

+11461
-0
lines changed

.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
/gulp-demo/node_modules
2+
/gulp-demo/dest

gulp-demo/gulpfile.js

+75
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
/*
2+
常见问题:
3+
Cannot find module 'gulp-imagemin' 找不到xxx模块
4+
这时候一般要
5+
npm install --save-dev gulp-imagemin 这样安装会自动更新package.json文件
6+
7+
*/
8+
9+
10+
var gulp=require('gulp'),
11+
rename=require('gulp-rename'), //重命名
12+
uglify=require('gulp-uglify'), //压缩js
13+
minifyCss=require('gulp-minify-css'), //压缩css
14+
minifyHtml=require('gulp-minify-html'), //压缩html
15+
jshint=require('gulp-jshint'), //js代码检查
16+
concat=require('gulp-concat'), //文件合并
17+
imagemin=require('gulp-imagemin'),
18+
pngquant=require('imagemin-pngquant'); //png图片压缩插件
19+
20+
/*js代码检查*/
21+
gulp.task('js-hint',function(){
22+
gulp.src('src/js/*')
23+
.pipe(jshint())
24+
.pipe(jshint.reporter());
25+
});
26+
27+
/*css或者js合并*/
28+
gulp.task('concat',function(){
29+
gulp.src('src/css/*') //要合并的文件
30+
.pipe(concat('main.css')) //合并匹配到的css文件,并命名为main.css
31+
.pipe(gulp.dest('src/css'));
32+
});
33+
34+
/*js压缩*/
35+
gulp.task('minify-js',function(){
36+
gulp.src('src/js/*')
37+
.pipe(uglify())
38+
//.pipe(rename('jquery.min.js'))
39+
.pipe(gulp.dest('dest/js'));
40+
});
41+
/*css压缩*/
42+
gulp.task('minify-css',['concat'],function(){ //minify-css 依赖于concat
43+
gulp.src('src/css/*')
44+
.pipe(minifyCss())
45+
.pipe(gulp.dest('dest/css'));
46+
});
47+
/*压缩html*/
48+
gulp.task('minify-html',function(){
49+
gulp.src('src/html/*')
50+
.pipe(minifyHtml())
51+
.pipe(gulp.dest('dest/html'));
52+
});
53+
54+
/*压缩图片*/
55+
gulp.task('image-min',function(){
56+
return gulp.src('src/images/*')
57+
.pipe(imagemin({
58+
progressive: true,
59+
use: [pngquant()] //使用pngquant来压缩png图片
60+
})
61+
)
62+
.pipe(gulp.dest('dest/images'));
63+
});
64+
65+
66+
gulp.task('default',['js-hint','concat','minify-js','minify-css','minify-html','image-min']);
67+
68+
69+
gulp.watch('src/js/*',['minify-js']); //监听 src/js/下面所有js文件的改动,只要改动就执行 minify-js任务
70+
71+
72+
/*
73+
gulp-imagemin 的插件: https://www.npmjs.com/browse/keyword/imageminplugin
74+
项目主页: https://github.com/sindresorhus/gulp-imagemin
75+
*/

gulp-demo/package.json

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
{
2+
"name": "test",
3+
"version": "1.1.1",
4+
"description": "test gulp play",
5+
"main": "gulpfile.js",
6+
"dependencies": {
7+
"gulp": "^3.9.0"
8+
},
9+
"devDependencies": {
10+
"gulp-concat": "^2.6.0",
11+
"gulp-imagemin": "^2.3.0",
12+
"gulp-jshint": "^1.11.2",
13+
"gulp-minify-css": "^1.2.0",
14+
"gulp-minify-html": "^1.0.3",
15+
"gulp-rename": "^1.2.2",
16+
"gulp-uglify": "^1.2.0",
17+
"imagemin-pngquant": "^4.1.0"
18+
},
19+
"scripts": {
20+
"test": "echo \"Error: no test specified\" && exit 1"
21+
},
22+
"author": "strive",
23+
"license": "MIT"
24+
}

gulp-demo/readme.txt

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
gulp�÷���
2+
1. gulp�İ�װ
3+
npm install -g gulp ȫ�ְ�װ
4+
npm install gulp ȫ�ְ�װ��ϣ�ÿ����Ŀ������װ
5+
����밲װ��ʱ���gulpд����package.json�ļ����棬���Լ��� --save-dev
6+
npm install --save-dev gulp
7+
8+
2. ʹ��gulp
9+
a). ����һ��gulpfile.js,��gulpfile�ж�������
10+
eg:
11+
var gulp=require('gulp');
12+
13+
gulp.task('default',function(){
14+
console.log('gulp default task');
15+
});
16+
b). �ܵ���ǰgulpĿ¼�£�����gulp�������gulp default
17+
3. gulp���õ�api
18+
gulp.task()
19+
gulp.src();
20+
gulp.desc();
21+
gulp.watch();
22+
23+
gulp.src(['js/*.js','css/*.css','*.html']) ��ȡ����Ҫ�������ļ�
24+
gulp.src(globs[, options])
25+
gulp.desc(); ������д�ļ���
26+
gulp.dest(path[,options])
27+
28+
gulp.task(); ��������
29+
30+
gulp.watch()���������ļ��ı仯�����ļ������仯�����ǿ�����������ִ����Ӧ�����������ļ�ѹ����
31+
32+
33+

0 commit comments

Comments
 (0)