如何将项目中的Angular Material更新到最新版本material@2.0.0-alpha.8-3
?请问最佳方法是什么?
我已经尝试了:
npm install --save @angular/material @angular/cdk
如何将项目中的Angular Material更新到最新版本material@2.0.0-alpha.8-3
?请问最佳方法是什么?
我已经尝试了:
npm install --save @angular/material @angular/cdk
npm update @angular/material @angular/cdk
这将安装最新的稳定版本。如果您想针对特定版本进行安装,则需要在@符号后面添加版本来指定。
此外,您可以使用以下命令检查过时的软件包:
npm outdated
以下是 npm update 的文档。
使用以下命令:
ng update @angular/material
注意:最近我使用了这个命令从版本8升级到版本9。我没有测试过它在旧版本中的效果。对于版本9之后的所有版本都可以正常工作。
ng update
是升级 Angular 和 Angular Material 的正确方法。在使用 ng update
进行升级时,它还会对文件进行一些必要的更改,而 npm update
不会执行这些更改。 - Debiprasadnpm remove @angular/material @angular/cdk
然后安装最新的软件包
npm add @angular/material @angular/cdk
方法 1
你尝试过使用简单的 npm i @angular/material
吗?根据 npmjs 上的报告,它会获取最新版本。
方法 2
删除文件 package-lock.json
并检查你的 package.json
是否与最新的 Angular Material 版本保持一致,然后只需执行 npm i
即可。
最好使用Angular工具升级ng update
,方法如下:
ng update @angular/material @angular/cli
在一些罕见的情况下,当您涉及某些材料混合时,此 Angular API 无法正常工作。在这种情况下,我建议使用 npm
(或对其熟悉的人使用 yarn),如下所示:
# Removing the material previous version files from node_modules in the explorer or with the command
npm remove @angular/material @angular/cdk
# Or by using yarn:
yarn remove @angular/material @angular/cdk
# And re-install the new version of the packages:
npm i @angular/material@latest @angular/cdk@latest
# with yarn it gives:
yarn add @angular/material@latest @angular/cdk@latest
您应该始终尝试使用ng update @angular/material
,因为它不仅会更新软件包,还会迁移您的代码,例如导入等。
我从7迁移到11,导入从
import { MatSnackBar } from '@angular/material';
变成了
import { MatSnackBar } from '@angular/material/snack-bar';
first remove from `package-lock.json` this
// "@angular/material": {
// "version": "6.4.7",
// "resolved": "https://registry.npmjs.org/@angular/material/-/material-6.4.7.tgz",
// "integrity": "sha512-SdNx7Xovi24Kw9eU6lkLhY/7f2M7L9F+/uh6XuPr4jbGgCUVVpeeVI5ztZhsZRbj1sN+/r1p5w8u62apWWl5Ww==",
// "requires": {
// "parse5": "^5.0.0",
// "tslib": "^1.7.1"
// },
// "dependencies": {
// "parse5": {
// "version": "5.1.0",
// "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz",
// "integrity": "sha512-
fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==",
// "optional": true
// }
// }
// },
// "@angular/cdk": {
// "version": "7.3.7",
// "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-7.3.7.tgz",
// "integrity": "sha512-xbXxhHHKGkVuW6K7pzPmvpJXIwpl0ykBnvA2g+/7Sgy5Pd35wCC+UtHD9RYczDM/mkygNxMQtagyCErwFnDtQA==",
// "requires": {
// "parse5": "^5.0.0",
// "tslib": "^1.7.1"
// },
// "dependencies": {
// "parse5": {
// "version": "5.1.0",
// "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz",
// "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==",
// "optional": true
// }
// }
// },
second remove from `package.json` this line
// "@angular/material": "^6.4.7",
// "@angular/cdk": "^7.3.7",
then finaly run this
npm install --save @angular/material @angular/cdk
如何从现有的低版本更新 Angular Material
npm remove @angular/material @angular/cdk
npm add @angular/material @angular/cdk