阅读 69

gulpfile.js gulp升级后gulpfile.js的变化 gulp执行shell

框架升级,gulp也从3.9升到4.0。还是有一些变化的。具体如下:

3.9版:

var gulp = require(‘gulp‘);
const del = require(‘del‘);
const fs = require(‘fs-extra‘);
const path = require(‘path‘);
const shell = require(‘gulp-shell‘);

gulp.task(‘del-build‘, function() {
  return del(‘./build/dist/*‘, { force: true });
});

gulp.task(‘add-packagejson‘, [‘del-build‘], function() {
  return (function() {
    const packageJson = path.join(__dirname, ‘./package.json‘);
    const assetsURL = path.join(__dirname, ‘./src/assets‘);
    const distFolder = path.join(__dirname, ‘./build/dist‘);
    const packageConfig = fs.readJsonSync(packageJson);
    fs.outputJson(distFolder + ‘/package.json‘, packageConfig);
    fs.copySync(assetsURL, distFolder + ‘/assets‘); // 拷贝静态文件到编译目录
  })();
});

gulp.task(‘build‘, [‘add-packagejson‘], shell.task([‘yarn run tsc‘]));
4.0版:
var gulp = require(‘gulp‘);
const del = require(‘del‘);
const fs = require(‘fs-extra‘);
const path = require(‘path‘);
const shell = require(‘gulp-shell‘);

gulp.task(‘del-build‘, gulp.series( function() {
  return del(‘./build/dist/*‘, { force: true });
}));

gulp.task(‘add-packagejson‘, gulp.series([‘del-build‘],shell.task([‘yarn run tsc‘]),function(done) {
  // gulp 4.0 需要用 gulp.series(),和done()结束。例如 gulp.series()(‘[del‘],...,function(done))
  return (function() {
    const packageJson = path.join(__dirname, ‘./package.json‘);
    const assetsURL = path.join(__dirname, ‘./src/assets‘);
    const distFolder = path.join(__dirname, ‘./build/dist‘);
    const packageConfig = fs.readJsonSync(packageJson);
    fs.outputJson(distFolder + ‘/package.json‘, packageConfig);
    console.log(‘拷贝静态文件到编译目录‘);
    fs.copySync(assetsURL, distFolder + ‘/assets‘); 
    done();
  })();
}));

gulp.task(‘build‘,gulp.series([‘add-packagejson‘]));

 


原文:https://www.cnblogs.com/119IT/p/15140560.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐