Angular模板的.NET Core应用报错:Browserslist: caniuse-lite过时如何解决?
解决Angular模板.NET Core应用中caniuse-lite过时的问题
我之前在Angular 10 + .NET Core 3.x的环境里也碰到过一模一样的问题,npm update没反应其实是因为这个命令不会强制更新某个特定依赖,尤其是像caniuse-lite这种被间接依赖的包。试试下面这些针对性的解决方案:
直接强制更新caniuse-lite:跳过全局npm update,直接安装最新版本的caniuse-lite到项目依赖里,执行命令:
npm install caniuse-lite@latest --save-dev这个命令会直接把caniuse-lite更新到当前最新版,同时更新package.json和package-lock.json里的版本记录。
清理npm缓存+重装依赖:如果上面的命令还是没效果,大概率是npm缓存的问题,先清空缓存再重装所有依赖:
npm cache clean --force rm -rf node_modules package-lock.json # Windows系统用 rmdir /s /q node_modules 和 del package-lock.json npm install清理.NET Core项目的编译缓存:有时候.NET的SpaServices会缓存前端资源,导致报错依然存在,执行以下操作:
- 删除项目根目录下的
bin和obj文件夹 - 重启你的.NET Core应用(可以关掉VS再重新打开,或者用
dotnet clean命令)
- 删除项目根目录下的
检查Angular Devkit版本匹配:Angular 10.0.5需要对应的
@angular-devkit/build-angular版本,确保它和Angular CLI版本一致,执行:npm install @angular-devkit/build-angular@10.0.5 --save-dev这个包是Angular构建的核心依赖,版本不匹配也可能间接导致caniuse-lite的版本问题。
完成这些步骤后,重新启动你的.NET Core应用,应该就能解决这个Browserslist的报错了。
内容的提问来源于stack exchange,提问作者ivan saron
相关产品推荐
相关产品推荐

