Angular 18使用webpack-bundle-analyzer报错:无法读取filter属性
解决Angular 18 stats.json分析时的filter未定义错误
针对你执行ng build --stats-json生成stats.json后,使用webpack-bundle-analyzer分析出现TypeError: Cannot read properties of undefined (reading 'filter')的问题,可尝试以下方案:
1. 升级webpack-bundle-analyzer版本
Angular 18默认搭配Webpack 5,旧版分析工具对Webpack 5生成的stats结构兼容性不足。执行命令更新到最新稳定版:
npm install webpack-bundle-analyzer@latest --save-dev
2. 改用Angular CLI内置分析工具
Angular CLI自带包分析能力,无需额外依赖,直接运行:
ng build --stats-json && ng run 你的项目名:analyze
把你的项目名替换成angular.json文件里的项目名称。
3. 校验stats.json完整性
如果构建过程中断或出错,生成的stats.json可能不完整,导致解析失败。可以:
- 删除dist目录和现有stats.json,重新执行
ng build --stats-json - 查看构建日志,确认没有报错,确保构建完全成功
4. 适配匹配的Webpack版本
若升级工具后仍有问题,可手动安装与Angular 18兼容的Webpack版本(Angular 18对应Webpack 5.90及以上):
npm install webpack@^5.90.0 --save-dev
内容的提问来源于stack exchange,提问作者Ya.
相关产品推荐
相关产品推荐

