Схема "materialDashboard" не найдена в коллекции "@angular/material"

Я пытался создать панель управления, используя следующую команду:

ng generate @angular/material:materialDashboard --name myDashboard

Когда я выполнил команду, это привело к ошибке:

Schematic "materialDashboard" not found in collection
"@angular/material". Error: Schematic "materialDashboard" not found in
collection "@angular/material".
  at SchematicEngine.createSchematic (/Users/xyx/Desktop/Git/question-authoring-platform/node_modules/@angular-devkit/schematics/src/engine/engine.js:155:23)
  at CollectionImpl.createSchematic (/Users/xyx/Desktop/Git/question-authoring-platform/node_modules/@angular-devkit/schematics/src/engine/collection.js:12:29)
  at Object.getSchematic (/Users/xyx/Desktop/Git/question-authoring-platform/node_modules/@angular/cli/utilities/schematics.js:36:23)
  at GenerateCommand.getOptions (/Users/xyx/Desktop/Git/question-authoring-platform/node_modules/@angular/cli/models/schematic-command.js:194:40)
  at GenerateCommand.<anonymous> (/Users/xyx/Desktop/Git/question-authoring-platform/node_modules/@angular/cli/commands/generate.js:38:53)
  at Generator.next (<anonymous>)
  at /Users/xyx/Desktop/Git/question-authoring-platform/node_modules/@angular/cli/commands/generate.js:7:71
  at new Promise (<anonymous>)
  at __awaiter (/Users/xyx/Desktop/Git/question-authoring-platform/node_modules/@angular/cli/commands/generate.js:3:12)
  at GenerateCommand.initialize (/Users/xyx/Desktop/Git/question-authoring-platform/node_modules/@angular/cli/commands/generate.js:30:16)

Даже я пробовал другие команды для myTable и matNavbar

ng generate @angular/material:materialNavbar --name matNavbar
ng generate @angular/material:materialTable --name myTable

Такая же ошибка произошла с двумя вышеуказанными командами. Я что-то пропустил?

Ответы

Ответ 1

Расследование выясняется, что команды aliases для генерации materialShell, materialDashboard, materialNav и materialTable были удалены из schematics/collection.json of @angular/material. Скорее, используя его, вы можете использовать их только в форме кебаба.

materialShell => material-shell
materialDashboard => material-dashboard
materialNav => material-nav
materialTable => material-table

Commit Here

Поэтому вместо использования старой команды, подобной этой

ng generate @angular/material:materialNav --name my-navbar

использование

ng generate @angular/material:material-nav --name my-navbar

Ответ 2

В официальной документации

Установка схемы

ng add @angular/material

Схемы генераторов

Схема навигации

ng generate @angular/material:material-nav --name <component-name>

Схема приборной панели

ng generate @angular/material:material-dashboard --name <component-name>

Схема таблицы

ng generate @angular/material:material-table --name <component-name>

Ответ 3

Вы можете установить его, используя:
ng generate @angular/material:dashboard --name myDashboard

Для других компонентов это будет:
ng generate @angular/material:nav --name myNav
ng generate @angular/material:table --name myTable

Информация о других
/node_modules/@angular/material/schematics/collection.json