Angular 4:添加 Angular material 时 d.ts 文件的 CLI 编译器问题

Angular 4 : Cli compiler issue with d.ts file when adding Angular material

我已经通过安装 npm install @angular/material 和 npm install @angular/cdk 添加到我的项目 angular material 现在当我编译我的应用程序时我得到了 .d.ts 文件错误。

我检查了我的 tsconfig.json 文件

{
  "compileOnSave": false,
  "compilerOptions": {
    "outDir": "./dist/out-tsc",
    "baseUrl": "src",
    "sourceMap": true,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "types": [ "node", "mocha", "chai" ],
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2016",
      "dom"
    ]
  },
  "exclude": [
    "node_modules",
    "wwwroot",
    "typings/main",
    "typings/main.d.ts"
  ]
}

tsconfig.app.json

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "module": "es2015",
    "baseUrl": "",
    "types": []
  },
  "exclude": [
    "test.ts",
    "**/*.spec.ts",
    "typings"
  ]
}

错误:

 RROR in /node_modules/@angular/material/dialog/typings/dialog-config.d.ts (22,40): ',' expected.

    ERROR in /node_modules/@angular/material/dialog/typings/dialog-config.d.ts (22,42): Type parameter name cannot be 'any'

    ERROR in /node_modules/@angular/material/dialog/typings/dialog-container.d.ts (36,14): Generic type 'MatDialogConfig<D, any>' requires 2 type argument(s).

    ERROR in /node_modules/@angular/material/dialog/typings/dialog.d.ts (49,15): ',' expected.

    ERROR in /node_modules/@angular/material/dialog/typings/dialog.d.ts (49,17): Type parameter name cannot be 'any'

    ERROR in /node_modules/@angular/material/dialog/typings/dialog.d.ts (49,90): Generic type 'MatDialogConfig<D, any>' requires 2 type argument(s).

安装最新的 'npm i @angular/material ' 时要小心,最新的有重大更改。很遗憾你的 IDE 不能提前告诉你并问你是否要继续。

@angular/material 要求提供最新的打字稿,而最新的打字稿是 2.4,我认为它只适用于 Angular 版本 5。

@angular/cdk也是如此。

最棒的是,它最终是一个稳定版本,而不是测试版。