+Service Worker
This commit is contained in:
39
gulpfile.js
39
gulpfile.js
@@ -6,6 +6,7 @@ const uglify = require('gulp-uglify');
|
||||
const cleanCSS = require('gulp-clean-css');
|
||||
const babel = require('gulp-babel');
|
||||
const notifier = require('node-notifier');
|
||||
const workboxBuild = require('workbox-build');
|
||||
const minifyJsSrc = path.join(__dirname, './public/src/js/**/*.js');
|
||||
const minifyCssSrc = path.join(__dirname, './public/src/css/**/*.css');
|
||||
|
||||
@@ -68,6 +69,44 @@ gulp.task('minify-css', () => {
|
||||
});
|
||||
});
|
||||
|
||||
gulp.task('service-worker', () => {
|
||||
return workboxBuild.injectManifest({
|
||||
swSrc: path.join(__dirname, './public/src/js/sw.js'),
|
||||
swDest: path.join(__dirname, './sw.js'),
|
||||
globDirectory: path.join(__dirname, './'),
|
||||
|
||||
// 注意:这里有个坑!后缀{js,css,xxx} 逗号之间不能加空格,否则识别有问题!!!
|
||||
globPatterns: [
|
||||
'public/**/*.{js,css,html,png,jpg,svg,ico,swf}',
|
||||
'node_modules/bootstrap/**/*.min.{js,css}',
|
||||
'node_modules/@fortawesome/**/*.{min.css,eot,ttf,woff,woff2}',
|
||||
'node_modules/blueimp-file-upload/**/*.{js,css}',
|
||||
'node_modules/sweetalert/dist/**/*.{js,css}',
|
||||
'node_modules/jquery/dist/**/*.{js,css}',
|
||||
'node_modules/metismenu/dist/**/*.{js,css}',
|
||||
'node_modules/lodash/**/*.min.js',
|
||||
'node_modules/fuelux/dist/**/*.{js,css}',
|
||||
'node_modules/simplemde/dist/**/*.{js,css}',
|
||||
'node_modules/js-md5/**/*.min.js',
|
||||
'node_modules/animate.css/**/*.min.css',
|
||||
'node_modules/lightbox2/**/*.min.{js,css}',
|
||||
'node_modules/scrollnav/**/*.min.js',
|
||||
'node_modules/jquery-qrcode/**/*.min.js',
|
||||
'node_modules/malihu-custom-scrollbar-plugin/**/*.{min.js,css,png}',
|
||||
'node_modules/jQuery-cycleText/**/*.min.js'
|
||||
],
|
||||
globIgnores: ['**/*/test/**/*.js'],
|
||||
modifyURLPrefix: {
|
||||
'public/favicon.ico': '/favicon.ico',
|
||||
'public/': '/static/',
|
||||
'node_modules/': '/nodeModules/'
|
||||
}
|
||||
}).then(({ count, size, warnings }) => {
|
||||
warnings.forEach(console.warn);
|
||||
console.log(`${count} files will be precached, totaling ${size} bytes.`);
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* 监听资源文件改动并自动执行任务
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user