|
// const gulp = require('gulp');
const { watch, src, dest, series, parallel } = require('gulp');
const rename = require('gulp-rename');
const less = require('gulp-less');
const replace = require('gulp-replace');
const through2 = require('through2');
const jeditor = require('gulp-json-editor');
const gulpInstall = require('gulp-install');
const srcDir = './src';
// const appJson = require('./miniprogram/app.json');
function wxss() {
return (
src([`${srcDir}/**/*.less`, `!${srcDir}/**/_*.less`, `!${srcDir}/style/less/*.less`,`!${srcDir}/**/*.wxss`])
.pipe(replace(/\@(import\s[^@;]*)+(;import|\bimport|;|b)?/g, ($1) => {
let isMixin = $1.indexOf(".less")
if (isMixin == -1) {
return `\/*T${$1}T*\/`
} else {
return $1
}
}))
.pipe(
less().on('error', function(err) {
console.error(err);
this.emit('end'); // 防止中断
})
)
.pipe(
rename(path => {
path.extname = '.wxss';
})
)
.pipe(replace(/\/\*T(@import\s[^@;]*;)?(T\*\/)?/g, '$1'))
.pipe(
dest(file => {
return file.base;
})
)
);
}
function watchCSS() {
watch(`${srcDir}/**/*.less`, series(wxss));
}
function clean() {
del(['./dist/**'])
}
exports.watchCSS = watchCSS;
exports.wxss = wxss;
exports.dev = series(wxss, watchCSS);
exports.default = wxss;
|