使用gulp构建项目架构

项目架构:


步骤:

1:

npm install gulp -g
2:

npm install gulp -save-dev
3:在项目的根目录创建gulpfile.js

将以下代码复制进去


 
 
var gulp = require("gulp");
var ejs = require("gulp-ejs");
var plumber = require("gulp-plumber");
var rename = require("gulp-rename");
var watch = require("gulp-watch");
var minifycss = require('gulp-minify-css');
var uglify = require('gulp-uglify');
var del = require("del");
var sass = require("gulp-sass");
var connect = require('gulp-connect');
var livereload = require('gulp-livereload');
var htmlmin = require("gulp-htmlmin");//Html压缩


//Htmls
gulp.task('htmls', function () {
    var options = {
        removeComments: true,//清除HTML注释
        collapseWhitespace: true,//压缩HTML
        collapseBooleanAttributes: true,//省略布尔属性的值 <input checked="true"/> ==> <input />
        removeEmptyAttributes: true,//删除所有空格作属性值 <input id="" /> ==> <input />
        removeScriptTypeAttributes: false,//删除<script>的type="text/javascript"
        removeStyleLinkTypeAttributes: false,//删除<style>和<link>的type="text/css"
        minifyJS: true,//压缩页面JS
        minifyCSS: true//压缩页面CSS
    };
    gulp.src(["./src/views/**/*.html"])
        .pipe(htmlmin(options))
        .pipe(gulp.dest("./src/build/views"));
});

gulp.task('ejs', () => {
    return gulp.src(["./src/views_ejs/**/*.ejs", "!./src/views_ejs/public/*.ejs"])
		.pipe(plumber())
		.pipe(ejs({},{}, {ext: '.html' }))
		.pipe(gulp.dest("./src/views/"))
});
gulp.task('css', () => {
    return gulp.src('./src/css/**/*.css')      //压缩的文
		.pipe(minifycss()) //输出文件夹
		.pipe(gulp.dest('./src/build/css'))

});
gulp.task('js', () => {
    return gulp.src('./src/js/**/*.js')      //压缩的文
		.pipe(uglify()) //输出文件夹
		.pipe(gulp.dest('./src/build/js'))

});

gulp.task('sass', () => {
    return gulp.src('./src/sass/**/*.scss')
		.pipe(sass().on('error', sass.logError))
		.pipe(gulp.dest('./src/css'));

});

gulp.task('clean', function (cb) {
    del(['./src/build/js/**/*.js', './src/build/css/**/*.css', "./src/build/views/**/*.html"], cb)
});

gulp.task('webserver', function() {
    connect.server({livereload: true});
});

gulp.task('images', function () {
   return gulp.src(['./src/images/*/**.*'])
			.pipe(gulp.dest('./src/build/images'))
});

gulp.task('watch', () => {
//	var server = livereload();
	watch('./src/views_ejs/',() =>{
		gulp.start('ejs')
	});
	
	watch('./src/sass/',() =>{
		gulp.start('sass')
	});
//	gulp.watch('./src/**/*.*', function (file) {
//        server.changed(file.path);
//    });
	
});
gulp.task('build', ['clean', 'sass','css', 'js', 'htmls','images']);

gulp.task('default', ['watch','webserver'])


4、在根目录创建package.json文件

npm init
5、安装各种依赖包:

npm install gulp-ejs -save-dev

npm install gulp-plumber -save-dev

npm install gulp-rename -save-dev
npm install gulp-watch -save-dev

npm install gulp-minify-css  -save-dev

npm install gulp-uglify -save-dev

npm install del  -save-dev

npm install gulp-sass -save-dev

npm install gulp-connect -save-dev

npm install gulp-livereload  -save-dev

npm install gulp-htmlmin -save-dev
6、运行gulp





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值