美文网首页
gulp 实战

gulp 实战

作者: 行走的蛋白质 | 来源:发表于2022-06-07 14:07 被阅读0次
const gulp = require('gulp');
const browserify = require("browserify");
const source = require("vinyl-source-stream");
const tsify = require("tsify");
const uglify = require('gulp-uglify');
// const sourcemaps = require('gulp-sourcemaps');
const buffer = require('vinyl-buffer');
const rename = require('gulp-rename');
const clean = require('gulp-clean');
const addName = process.argv.slice(2)[1];
const entryPath = `logic/${addName}/test.ts`;

const paths = {
  pages:['src/*.html']
};

const browserifyFun = browserify({
  basedir: '.',
  debug: true,
  entries: [entryPath],
  cache: {},
  packageCache: {}
}).plugin(tsify);
// 打包前清除旧有打包内容文件
gulp.task('clean:dist', function() {
  return gulp.src(`./dist/${addName}`)
    .pipe(clean());
});
// 复制模板文件到对应的站点包文件下
gulp.task("copy:html", function () {
  return gulp.src(paths.pages)
    .pipe(gulp.dest(`dist/${addName}`));
});

function bundle() {
  return browserifyFun
    .transform('babelify', {
      presets: ['@babel/preset-env'],
      extensions: ['.ts']
    })
    .bundle()
    .pipe(source('bundle.js'))
    .pipe(buffer())
    // .pipe(rename({suffix: '_1_0_0'})) // 打包带版本文件
    // .pipe(sourcemaps.init({loadMaps: true})) // 代码调试用
    .pipe(uglify()) // 压缩代码
    // .pipe(sourcemaps.write('./')) // 代码调试用
    .pipe(gulp.dest(`dist/${addName}`));
}

gulp.task("default", gulp.series('clean:dist', gulp.parallel('copy:html', bundle)));

相关文章

  • Gulp实战

    原文链接:www.talkingcoder.com 什么是gulp Gulp是可以自动化执行任务的工具。在平时开发...

  • gulp 实战

  • gulp插件实战

    自从开始做 angularJS 项目以来,对gulp使用变得十分频繁。实际的开发体验就是非常方便,构建代码,本地调...

  • gulp项目实战

    项目目录结构 项目功能有:压缩js,css,html,图片,监听和同步到浏览器 const gulp = requ...

  • gulp学习(三)-实战

    参考 i5tingbook gulp-book 前面两节学习到gulp的基本知识,也知道gulp可以进行压缩,监控...

  • gulp

    gulp gulp.src gulp.dest gulp.task gulp.watch gulp.pipe() ...

  • 前端构建大法 Gulp 系列 (四):gulp实战

    前面讲了很多理论,那么这一节我们将讲一些实战的例子 安装Node.js 先在命令行下输入 node -v 检查一下...

  • gulp自动化项目构建

    var gulp = require('gulp');//引用gulp var $ = require('gulp...

  • gulp压缩合并文件

    gulp压缩合并文件流程 //引入gulp和gulp插件var gulp = require('gulp');va...

  • Gulp 使用方法(教程一)

    Gulp 官网 目录 Gulp 环境 Gulp 环境 初始化目录结构 安装 gulp gulp 的简单使用 使用 ...

网友评论

      本文标题:gulp 实战

      本文链接:https://www.haomeiwen.com/subject/sbremrtx.html