ng generate @angular/material:material-nav --name=main-nav генерирует файлы правильно, но они не запускаются

Я запустил простую команду, которая должна сгенерировать готовые файлы, которые будут готовы для использования в качестве навигационной панели. Он загружается правильно, но если я добавлю <main-nav></main-nav> на мою страницу app.component.html она просто выведет пустую страницу. В моей консоли нет ошибок. Ниже приведена команда: ng generate @angular/material:material-nav --name=main-navЯ использую Mac, Angular 6 и Angular Material. Ниже приведено видео, на котором я следил: https://www.youtube.com/watch?v=Q6qhzG7mObU. Я проверил каждую часть независимо и обнаружил, что <mat-sidenav></mat-sidenav> функция не работает вообще.

1 ответ

Вы добавили MatSidenavModule в модуль вашего приложения?

@NgModule({
  imports: [
    MatSidenavModule,
    // ...
  ]
})
export class AppModule { }

У меня была аналогичная проблема, моя была решена путем перехода к папке main-nav, которая была создана после того, как вы запустили ng generate @angular/material:material-nav --name=main-nav

Примечание: имя папки будет тем именем, которое вы присвоили --name=?

перейдите к main-nav.component.ts Найди @componentsдекоратор и найдите в нем свойство селектора. используйте этот селектор в качестве тега там, где это необходимо, например, в этом случае вы должны заменить тег на странице app.component.html.

Например, мой декоратор @components выглядит так:

@Component({
  selector: 'app-app-nav',
  templateUrl: './app-nav.component.html',
  styleUrls: ['./app-nav.component.scss']
})

Итак, на моей странице app.component.html было бы <main-nav></main-nav>.

Я надеюсь, что это помогает кому-то.

Другие вопросы по тегам