在业务项目 Business 中引用了组件库 Components,使用 webpack 构建,配置了 Tree Shaking 相关属性,未被使用的代码都被删除了,但未被使用的图片却出现在了最终产物中。
比如,Components 导出了组件 ComponentA,存在这样的资源引用关系:ComponentA.tsx -> ComponentA.less -> ComponentA.png。ComponentA 未被使用,所以 ComponentA.tsx、ComponentA.less、ComponentA.png 应该都被删除,但在最终产物中,确实没有 ComponentA.tsx、ComponentA.less 相关代码,但 ComponentA.png 还在。
如何才能把 ComponentA.png 也删除?
我创建了一个项目,跟前面的描述有所差异,组件都在本项目内,不是在组件库中,执行 build 命令,会发现 component-a 未被使用,在构建产物中,它的所有代码都被删除,但只被它使用的图片却还在。