webpack的splitchunk的cachegroup如果配置了的话,会和external冲突吗,
比如引入了axios和lodash,在cachegroup里面配置了,然后同时在external里面配置,会优先取哪个呢
webpack的splitchunk的cachegroup如果配置了的话,会和external冲突吗,
比如引入了axios和lodash,在cachegroup里面配置了,然后同时在external里面配置,会优先取哪个呢
在webpack配置中,splitChunks
的cacheGroups
用于代码分割,主要目的是将代码拆分成多个bundle,以便于缓存和并行加载。而externals
配置则用于将某些依赖标记为外部依赖,这意味着这些依赖不会被打包进webpack的bundle中,而是在运行时从外部环境中获取。
关于splitChunks
的cacheGroups
和externals
的冲突问题:
externals
中配置了某个库(如axios或lodash),webpack在打包时会忽略这些库,因为它们被标记为外部依赖。这意味着,无论你在splitChunks
的cacheGroups
中如何配置这些库,webpack都不会将它们包含在打包后的bundle中。axios
和lodash
同时被配置在externals
和splitChunks
的cacheGroups
中,externals
的配置将优先于splitChunks
的配置。这意味着这些库将不会被webpack打包,而是作为外部依赖处理。结论:
externals
配置时,webpack会忽略在externals
中指定的任何库,无论这些库是否在splitChunks
的cacheGroups
中有所配置。externals
配置。splitChunks
来优化这些库的加载(例如,将它们分离到不同的bundle中以便缓存),你需要确保这些库没有被列在externals
配置中。2 回答1.5k 阅读✓ 已解决
1 回答1.5k 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
2 回答986 阅读
548 阅读
确实可能会产生冲突。在
cacheGroups
中配置了某些库,并同时在external
中指定了这些库时,Webpack
会优先使用external
配置,所以这些库将不会被打包到最终的输出文件中,而是期望在运行时从外部环境加载。