gulp-add-require-config

gulp-add-require-config

Usage no npm install needed!

<script type="module">
  import gulpAddRequireConfig from 'https://cdn.skypack.dev/gulp-add-require-config';
</script>

README

gulp-add-require-config

解析打包后文件中所有模块的moduleID, 生成config后插到入口文件(mainJS)的头部

Install

npm i gulp-add-require-config --save-dev

example

const addRequireConfig = require('gulp-add-require-config');

gulp.src(['src/static/**/*.js'])
.pipe(
    addRequireConfig({
        // 指向入口文件
        mainJs: 'main.js',
        baseUrl: 'xxx',
        // 文件部署路径
        deloyDir: '//xxx/xxx/',
        sourceDir: path.resolve('src')
    })
)
.pipe(gulp.dest('dist'))

// before

// bundle_xxxxxxx.js

define("test/a_556240b",["require","exports"],function(e,o){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.init=function(e){console.log(e,"执行了")}});
define("test/b_fd483c4",["require","exports"],function(e,o){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.b=function(e){console.log(e,"执行了")}});

// main.js

import { a } from './a';
import { b } from './b';
export default class test {
    constructor () {
        a(page, 'init');
        b(page, 'ready'); 
    }
}

// after

require.config({baseUrl:'xxx',paths:{"test/a_556240b":"//xxx/xx/assert/bundle_xxxxxxx","test/b_fd483c4":"//xxx/xx/assert/bundle_xxxxxxx"}});
import { a } from './a';
import { b } from './b';
export default class test {
    constructor () {
        a(page, 'init');
        b(page, 'ready'); 
    }
}