`gulp`打包压缩js ,对应多个html ,不同html有不同的入口文件怎么写?

gulpfile.js的写法,现在入口就是main.js 这个文件
但是我现在有另外一个页面,引入的是main2.js 我要怎么配呢?才能让main2.js也可以被压缩?同时指定出口?

const path = {
    js: {
        entries: 'src/assets/js/main.js',
        output: './assets/js/main.js',
        src: 'src/**/*.js',
        dest: 'dist'
    }
}
const jsCompress = () => {
    return browserify({
        entries: path.js.entries, 
        debug: true
    })
        .transform(babelify, {
            presets: ['@babel/preset-env']
        })
        .bundle()
        .pipe(source(path.js.output))
        .pipe(buffer())
        .pipe(uglify())
        .pipe(gulp.dest(path.js.dest));
}
阅读 2.5k
1 个回答
✓ 已被采纳
const path = {
    js: {
        entries: ['src/assets/js/main.js', 'src/assets/js/main2.js'],
        output: ['./assets/js/main.js', './assets/js/main2.js'],
        src: 'src/**/*.js',
        dest: 'dist'
    }
};

const jsCompress = (entry, output) => {
    return browserify({
        entries: entry,
        debug: true
    })
        .transform(babelify, {
            presets: ['@babel/preset-env']
        })
        .bundle()
        .pipe(source(output))
        .pipe(buffer())
        .pipe(uglify())
        .pipe(gulp.dest(path.js.dest));
};

gulp.task('compress-main', () => jsCompress(path.js.entries[0], path.js.output[0]));
gulp.task('compress-main2', () => jsCompress(path.js.entries[1], path.js.output[1]));

gulp.task('default', gulp.parallel('compress-main', 'compress-main2'));
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏