let config = {
externals: {
react: 'window.React',
'react-dom': 'window.ReactDOM',
},
scripts: [
'https://gw.alipayobjects.com/os/lib/react/16.13.1/umd/react.production.min.js',
'https://gw.alipayobjects.com/os/lib/react-dom/16.13.1/umd/react-dom.production.min.js',
],
//减少对部分版本的依赖
targets: {
ie: 11,
// chrome: 49,
// firefox: false, //默认10
// safari: false, //默认13
// edge: false,//默认13
// ios: false,//默认10
},
//编辑时对node_modules 中的文件不经过babel 编译
nodeModulesTransform: {
type: 'none',
exclude: [],
},
//开启chunks,抽离node_modules 中的被引用的重复方法
chunks: ['vendors', 'umi'],
chainWebpack: function (config, { webpack }) {
config.merge({
optimization: {
splitChunks: {
chunks: 'all',
minSize: 20000,
minChunks: 3,
automaticNameDelimiter: '_',
cacheGroups: {
vendor: {
name: 'vendors',
test: /[\\/]node_modules[\\/]/,
priority: 10,
},
},
},
},
});
},