首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Gulp任务中运行“`node”函数?

如何在Gulp任务中运行“`node”函数?
EN

Stack Overflow用户
提问于 2022-10-26 05:43:11
回答 1查看 19关注 0票数 0

我正在用.css缩小gulp-cssnano,我想把css文件从main.css重命名为main.min.css

我创造了这样的影响:

代码语言:javascript
复制
gulp.task('cssnano', async function() {
  return gulp.src('./dist/css/**/*.css')
    .pipe(cssnano())
    .pipe(gulp.dest('./dist/css/'));

    fs.rename('./dist/css/main.css', '/dist/css/main.min.css', function (err) {
      if (err) throw err;
      console.log('File Renamed.');
    });
});

但是这是行不通的-- fs函数根本不启动。

我还把它分解成它自己的功能:

代码语言:javascript
复制
gulp.task('cssnano', async function() {
  return gulp.src('./dist/css/**/*.css')
    .pipe(cssnano())
    .pipe(gulp.dest('./dist/css/'))
    .pipe(renameToMin());
});

function renameToMin() {
  fs.rename('./dist/css/main.css', '/dist/css/main.min.css', function (err) {
    if (err) throw err;
    console.log('File Renamed.');
  });
}

但是再次得到一个没有结果的错误:

TypeError:无法读取未定义的属性(读取“on”)

有人知道我是怎么做到的吗?

EN

回答 1

Stack Overflow用户

发布于 2022-10-26 08:15:40

series()将允许您链接任务。

代码语言:javascript
复制
const { rename } = require('node:fs/promises')
const { series } = require('gulp')

function cssnanoBuild() {
  return gulp.src('./dist/css/**/*.css')
    .pipe(cssnano())
    .pipe(gulp.dest('./dist/css/'))
});

async function cssnanoRenameToMin() {
  await rename('./dist/css/main.css', '/dist/css/main.min.css')
  console.log('File Renamed.');
}

exports.cssnano = series(cssnanoBuild, cssnanoRenameToMin)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74203152

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档