angular - 无法在 app.module 中导入 MatDialogModule
问题描述
我是角度的初学者,我正在使用角度材料对话框。首先,我将材料添加到我的项目中并从@angular/material
.
当我在中添加(import { MatDialogModule } from '@angular/material/dialog';
))时app.module.ts
,编译项目时出现以下错误
ERROR in node_modules/@angular/cdk/coercion/array.d.ts(10,60): error
TS1005: ',' expected.
node_modules/@angular/cdk/coercion/array.d.ts(10,61): error TS1005:
',' expected. node_modules/@angular/cdk/coercion/array.d.ts(10,75):
error TS1144: '{' or ';' expected.
node_modules/@angular/cdk/coercion/array.d.ts(10,77): error TS1011: An
element access expression should take an argument.
为什么?
这是我的 package.json:
{
"name": "sales-maret",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/animations": "^7.2.16",
"@angular/cdk": "^9.2.0",
"@angular/common": "~7.2.0",
"@angular/compiler": "~7.2.0",
"@angular/core": "~7.2.0",
"@angular/forms": "~7.2.0",
"@angular/material": "^9.2.0",
"@angular/platform-browser": "~7.2.0",
"@angular/platform-browser-dynamic": "~7.2.0",
"@angular/router": "~7.2.0",
"core-js": "^2.5.4",
"hammerjs": "^2.0.8",
"material-icons": "^0.3.1",
"rxjs": "~6.3.3",
"tslib": "^1.9.0",
"zone.js": "~0.8.26"
},
"devDependencies": {
"@angular-devkit/build-angular": "~0.13.0",
"@angular/cli": "~7.3.6",
"@angular/compiler-cli": "~7.2.0",
"@angular/language-service": "~7.2.0",
"@types/node": "~8.9.4",
"@types/jasmine": "~2.8.8",
"@types/jasminewd2": "~2.0.3",
"codelyzer": "~4.5.0",
"jasmine-core": "~2.99.1",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~4.0.0",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.1",
"karma-jasmine": "~1.1.2",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "~5.4.0",
"ts-node": "~7.0.0",
"tslint": "~5.11.0",
"typescript": "~3.2.2"
}
}
解决方案
错误是因为@angular/material、@angular/cdk 和@angular/core 包的版本号不匹配。包 @angular/material 和 @angular/cdk 的版本是 9.2.0 但 @angular/core 的版本是 7.2.0 。
为了正常运行,三个包应该具有相同的版本。
您应该卸载 @angular/material 和 @angular/cdk 软件包,然后安装旧版本。
npm uninstall @angular/material
npm uninstall @angular/cdk
npm install @angular/material@7.2.0
npm install @angular/cdk@7.2.0
推荐阅读
- javascript - 在开发者工具(Chrome)中解析数据包
- node.js - 有没有办法验证代码中的所有环境变量是否都存在于 .env 文件中?
- python - POST 请求如何更改 ViewState 和 EventValidation 中的值
- javascript - jQuery:最初创建克隆的可拖动 div,然后在被删除后不会
- javascript - 类型错误:reactjs 中的 this.state.data.map
- python - 在标签 tkinter 中显示日历中的日期
- amazon-web-services - AWS Amplify AppSync GraphQL @Auth 指令:如何禁止为公共用户列出元素
- libc - 在 efi shell 应用程序中包含 edk2-libc
- java - COS上使用Aspera Java SDK访问文件的问题
- angular - Angular 接口中的可选 id 提供类型编号的参数 undefined 不能分配给类型编号的参数