升级Angular版本时遇Uncaught TypeError: Cannot set property once报错求助
解决Angular升级后
addEventListener相关TypeError问题 错误详情
Uncaught TypeError: Cannot set property once of [object Object] which has only a getter at HTMLDivElement.addEventListener (polyfills.js:1:146664)
可能原因
该错误多由旧版core-js polyfill与Angular新版本API不兼容,或是polyfill的版本、加载顺序冲突导致。
修复方案
- 更新
core-js版本
打开项目根目录的package.json,将core-js升级至与当前Angular版本匹配的稳定版(如Angular 14+推荐使用core-js@3.x),然后执行:npm install - 清理缓存并重构项目
npm cache clean --force ng build --delete-output-path - 检查
polyfills.ts配置
移除重复或过时的手动polyfill导入(比如旧版core-js/es6系列导入),Angular新版本会自动按需引入必要的polyfill,无需手动添加冗余内容。 - 排查第三方依赖
若项目使用了老旧第三方库,其内置的polyfill可能与新版Angular冲突,尝试将这些依赖更新至最新兼容版本,或临时禁用依赖以定位问题。
内容的提问来源于stack exchange,提问作者Akhil
相关产品推荐
相关产品推荐

