Angular新项目执行ng serve时出现TS2393重复函数实现错误求助
解决Angular 19.2.x + TypeScript 5.8.3中TS2393重复函数实现错误
核心原则
绝对不要修改node_modules目录下的文件,依赖更新后修改会被覆盖,且可能引发其他连锁问题。
具体解决步骤
1. 排查全局代码/第三方库的冲突
- 搜索项目内的全局脚本(如
polyfills.ts、index.html中引入的外部脚本),确认是否存在全局声明的function stop(): void - 检查
package.json中的依赖项,排查是否有第三方库会导出全局的stop函数
2. 调整TypeScript配置
方案A:明确指定需要的类型库
打开项目根目录的tsconfig.json,在compilerOptions中添加types数组,仅引入必要的类型,避免DOM类型重复加载:
{ "compilerOptions": { // 其他配置... "types": ["@angular/core", "node"] } }
方案B:临时跳过库类型检查(权宜之计)
如果暂时找不到冲突源,可以开启skipLibCheck绕过类型库的重复声明检查,但建议后续找到根本原因后关闭:
{ "compilerOptions": { // 其他配置... "skipLibCheck": true } }
3. 验证依赖版本兼容性
执行以下命令确认所有Angular相关依赖版本一致:
ng version
确保@angular/core、@angular/cli、@angular/compiler-cli的版本均为19.2.x,且TypeScript版本与Angular官方推荐的5.8.x匹配。
4. 彻底清理并重建依赖
执行以下命令完全重置依赖:
# 删除依赖目录和锁文件 rm -rf node_modules package-lock.json # 重新安装依赖 npm install
5. 检查自定义类型声明文件
查看项目src目录下的所有.d.ts文件,确认是否存在重复声明stop函数的自定义类型。
内容的提问来源于stack exchange,提问作者LocustHorde
相关产品推荐
相关产品推荐

