Angular Material 12升级至13后ng serve报错的解决过程
Angular Material 12升级至13后
ng serve报错:ENOENT找不到@angular目录 问题详情
从Angular Material 12升级到13时,执行ng update @angular/material@13 --allow-dirty --force操作后,运行ng serve抛出以下错误:
Error: ENOENT: no such file or directory, lstat 'C:\Users\Me\source\Workspaces\MyApp@angular' at Object.realpathSync (node:fs:2689:7) ...
当前项目的package.json依赖配置如下:
"dependencies": { "@angular/animations": "~13.4.0", "@angular/cdk": "^13.3.9", "@angular/common": "~13.4.0", "@angular/compiler": "~13.4.0", "@angular/core": "~13.4.0", "@angular/forms": "^13.4.0", "@angular/material": "^13.3.9", "@angular/platform-browser": "~13.4.0", "@angular/platform-browser-dynamic": "~13.4.0", "@angular/router": "~13.4.0", "@lottiefiles/lottie-player": "^1.4.4", "@ng-select/ng-select": "^7.4.0", "@ngx-loading-bar/core": "^6.0.2", "@ngx-loading-bar/http-client": "^6.0.2", "@tailwindcss/forms": "^0.5.3", "class-transformer": "^0.5.1", "daisyui": "^1.16.1", "file-saver": "^2.0.5", "jsqr": "^1.4.0", "mat-select-filter": "^2.4.1", "moment": "^2.29.4", "ngx-filesaver": "^13.0.0", "ngx-mat-select-search": "^5.0.0", "ngx-skeleton-loader": "^6.0.0", "replace-in-file": "^6.3.2", "rxjs": "~6.6.0", "sass": "^1.47.0", "sonar-scanner": "^3.1.0", "tailwindcss": "^3.2.1", "three": "^0.153.0", "tslib": "^2.3.0", "zone.js": "~0.11.4" }, "devDependencies": { "@angular-devkit/build-angular": "~13.3.11", "@angular/cli": "~13.3.11", "@angular/compiler-cli": "~13.4.0", "@types/jasmine": "~3.8.0", "@types/node": "^17.0.29", "@types/three": "^0.152.1", "jasmine-core": "~3.8.0", "karma": "~6.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "~1.7.0", "typescript": "~4.6.4" }
已尝试删除node_modules文件夹并执行npm install,但问题未解决。
解决方案
- 执行命令卸载现有Angular Material:
npm uninstall @angular/material - 重新安装指定版本的Angular Material:
ng add @angular/material@13
内容的提问来源于stack exchange,提问作者Q.Rey
相关产品推荐
相关产品推荐

