gulp添加时间戳

发布于 2022-09-07 20:56:15 字数 2964 浏览 14 评论 0

想给项目添加版本,用gulp-rev生成替换的json是总是只有生成两个对应的css

/ 生成输出路径
function getDistFolder(distPath) {
  return `${distFolder}/${distPath}`;
}

// -----------
// LESS 处理
// -----------

// LESS 编译
function compileLess(input, base, output, watch, min, sourcemaps) {
  return gulp.src(input, {base: base})
    .pipe($.plumber())
    .pipe(watch ? $.watch(input, {base: base}) : noop())
    .pipe(watch || !!argv.using ? $.using({prefix: 'Using less'}) : noop())
    .pipe(sourcemaps ? $.sourcemaps.init() : noop())
    .pipe($.less())
    .pipe(min ? $.cleanCss() : noop())
    .pipe(sourcemaps ? $.sourcemaps.write() : noop())
    .pipe($.rev())
    .pipe(gulp.dest(output)) 
    .pipe($.rev.manifest())
    .pipe(gulp.dest(output)) 
}

function compRev(output, distPath) {  
  return gulp.src([output + '/*.json', distPath + '/**/**/*.html'])
  .pipe(revCollector({
      replaceReved: true
  }))
  .pipe(gulp.dest(distPath));
}

gulp.task('admin:rev', function () {
  log('替换开始');
  return compRev(getDistFolder('admin/css'), getDistFolder('admin'));
});
gulp.task('school:rev', function () {
  return compRev(getDistFolder('school/css'), getDistFolder('school'));
});
gulp.task('oss:rev', function () {
  return compRev(getDistFolder('oss/css'), getDistFolder('oss'));
});

// 定制 bootstrap
gulp.task('less:bootstrap:admin', () => {
  return compileLess(resetPath(src.less.bootstrap, 'admin'), '', getDistFolder('admin/css'), false, !!argv.min, !!argv.sourcemaps);
});
gulp.task('less:bootstrap:school', () => {
  return compileLess(resetPath(src.less.bootstrap, 'school'), '', getDistFolder('school/css'), false, !!argv.min, !!argv.sourcemaps);
});
gulp.task('less:bootstrap:oss', () => {
  return compileLess(resetPath(src.less.bootstrap, 'oss'), '', getDistFolder('oss/css'), false, !!argv.min, !!argv.sourcemaps);
});

// 监视 bootstrap
gulp.task('watch:bootstrap:admin', () => {
  gulp.watch(resetPath(src.less.bootstrapWatch, 'admin'), ['less:bootstrap:admin']);
});
gulp.task('watch:bootstrap:school', () => {
  gulp.watch(resetPath(src.less.bootstrapWatch, 'school'), ['less:bootstrap:school']);
});
gulp.task('watch:bootstrap:oss', () => {
  gulp.watch(resetPath(src.less.bootstrapWatch, 'oss'), ['less:bootstrap:oss']);
});

// 通用 app.css
gulp.task('less:common:admin', () => {
  return compileLess(resetPath(src.less.common, 'admin'), '', getDistFolder('admin/css'), false, !!argv.min, !!argv.sourcemaps);
});
gulp.task('less:common:school', () => {
  return compileLess(resetPath(src.less.common, 'school'), '', getDistFolder('school/css'), false, !!argv.min, !!argv.sourcemaps);
});
gulp.task('less:common:oss', () => {
  return compileLess(resetPath(src.less.common, 'oss'), '', getDistFolder('oss/css'), false, !!argv.min, !!argv.sourcemaps);
});

项目路径

图片描述

图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

野侃 2022-09-14 20:56:15

问题解决了,自己写法有问题。
并没有等所有文件生成后才来对静态文件进行时间戳添加,具体可参考

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文