代码拉取完成,页面将自动刷新
// 加载模块
const {task,src,dest,watch,series,parallel} = require('gulp');
// 用于加载其他gulp插件
const load = require('gulp-load-plugins')();
// nodejs的del模块用于删除文件
const del = require('del');
// 删除dist目录
task('delDist',async ()=>{
await del('./dist');
})
// 处理图片
task('image', async ()=>{
src('./image/*.*')
.pipe(dest('./dist/image'))
})
// 处理sass
task('sass', async ()=>{
src('./sass/*.scss')
.pipe(load.sass())
.pipe(load.rev())
.pipe(load.minifyCss())
.pipe(dest('./dist/css'))
.pipe(load.rev.manifest())
.pipe(dest('./rev/css'))
})
// 处理icon
task('icon', async () => {
src('./iconfont/*.*')
.pipe(dest('./dist/iconfont'))
.pipe(load.connect.reload())
})
// 处理js
task('js', async ()=>{
src('./js/*.js')
.pipe(load.rev())
.pipe(load.babel({presets: ['@babel/env']}))
.pipe(load.uglify())
.pipe(dest('./dist/js'))
.pipe(load.rev.manifest())
.pipe(dest('./rev/js'))
})
// 处理lib
task('lib', async ()=>{
src('./js/lib/*.js')
.pipe(load.uglify())
.pipe(dest('./dist/js/lib'))
})
//处理moudel
task('modules', async ()=>{
src('./js/modules/**/*.js')
.pipe(load.babel({presets: ['@babel/env']}))
.pipe(load.uglify())
.pipe(dest('./dist/js/modules'))
})
// 处理html
task('html', async ()=>{
src(['./rev/**/*.json','./pages/*.html'])
.pipe(load.revCollector({replaceReved:true}))
.pipe(load.minifyHtml())
.pipe(dest('./dist/pages'))
})
// 监听文件变化
// task('watch',async ()=>{
// watch('./image/*.*',series('image'));
// watch('./style/*.css',series('style'));
// watch('./js/*.js',series('js'));
// watch('./pages/*.html',series('html'));
// })
// 启动服务,自动刷新
task('connect',async ()=>{
load.connect.server({
root: './dist',
livereload: true,
port: 3001
});
})
// 构建生产包
task('build',series('delDist','image','sass','js','modules','lib','html','connect'))
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。