const gulp = require('gulp');
const chalk = require('chalk');
const rename = require('gulp-rename');// 支持 less
gulp.task('less', () => {
return gulp
.src('./miniprogram/**/*.less')
.pipe(less())
.pipe(postcss()) // 配置在 post.config.js
.pipe(
rename((path) => {
path.extname = '.wxss';
})
)
.pipe(
gulp.dest((file) => {
return file.base; // 原目录
})
);
});
// 开发环境监听 less
if (env === 'development') {
gulp.watch(['./miniprogram/**/*.less'], gulp.series('less')).on('change', (path) => {
log(chalk.greenBright(`File ${path} was changed`));
});
}
// 一下代码注释掉了,依赖包下载太慢了,这主要负责图片的压缩
const imagemin = require('gulp-imagemin');
const cache = require('gulp-cache'); // 使用缓存
gulp.task('miniimage', () => {
return gulp
.src('./miniprogram/**/*.{png,jpe?g,gif,svg}')
.pipe(
cache(
imagemin([
imagemin.gifsicle({ interlaced: true }),
imagemin.mozjpeg({ quality: 75, progressive: true }),
imagemin.optipng({ optimizationLevel: 5 }),
imagemin.svgo({
plugins: [{ removeViewBox: true }, { cleanupIDs: false }],
}),
])
)
)
.pipe(
gulp.dest((file) => {
return file.base; // 原目录
})
);
});
其他的一些具体配置,可以看我的GitHub 仓库源码
参考
taro-cli
pandora-cli
little-bird-cli
到此这篇关于开发Node CLI构建微信小程序脚手架的示例的文章就介绍到这了,更多相关Node CLI构建小程序脚手架内容请搜索软件开发网以前的文章或继续浏览下面的相关文章希望大家以后多多支持软件开发网!









