File size: 990 Bytes
079c32c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
var path = require('path')
var merge = require('webpack-merge')
var HtmlWebpackExcludeAssetsPlugin = require('html-webpack-exclude-assets-plugin')
var htmlWebpackPlugin = require('html-webpack-plugin')

function resolve(name) {
  return path.join(__dirname, name)
}

// TODO: not work
module.exports = {
  chainWebpack: config => {
    config
    // Interact with entry points
      .entry('ai')
      .add(resolve('src/ai/bridge.js'))
      .end()
    // Modify output settings
      .output
      .path(resolve('dist'))
      .filename('[name].bundle.js')
      .globalObject('this') //https://github.com/webpack/webpack/issues/6642

    config.devtool(false)


    // exclude ai.js
    config
      .plugin('html')
      .tap(args => {
        args[0].excludeAssets = [/ai.*.js/]
        return args
      })

    config.plugin('assets')
      .use(HtmlWebpackExcludeAssetsPlugin)

    config.optimization
      .splitChunks(false) // will cause webworker not work if enable this

  }
}