Маршрутизатор Angular 8 не перенаправляет на маршруты - PullRequest
0 голосов
/ 24 октября 2019

My app.component.html :

<router-outlet></router-outlet>

my app-routing.module.ts

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterModule, Routes } from '@angular/router';
import { MenuComponent } from './components/menu/menu.component';
import { BlogComponent } from './components/blog/blog.component';
import { TeamComponent } from './components/team/team.component';

const routes: Routes = [
  { path: '', component: MenuComponent },
  { path: '**', component: MenuComponent },
  { path: 'menu', component: MenuComponent },
  { path: 'blog', component: BlogComponent },
  { path: 'team', component: TeamComponent }
];

@NgModule({
  imports: [
    RouterModule.forRoot(routes)
  ],
  exports: [RouterModule]
})
export class AppRoutingModule { }

Когда янапишите маршрут в URL-адресе (например, http://localhost:4200/blog) ошибка не выдается, но я остаюсь в MenuComponent. Также, когда я обновляюсь, ссылка остается http://localhost:4200/blog.

Я что-то упустил?

PS: Если какой-либо код необходим, я могу отредактировать свой вопрос, чтобы показать его, не понижайте сразу:)

1 Ответ

3 голосов
/ 24 октября 2019

Вам нужно заказать маршруты, маршрутизатор находит первое совпадение, которое является компонентом вашего меню, попробуйте это.

const routes: Routes = [
  { path: 'menu', component: MenuComponent },
  { path: 'blog', component: BlogComponent },
  { path: 'team', component: TeamComponent },
  { path: '', component: MenuComponent },
  { path: '**', component: MenuComponent }
];

Порядок маршрутов в конфигурации имеет значение, и этоэто дизайн. Маршрутизатор использует стратегию выигрыша первого совпадения при сопоставлении маршрутов, поэтому более конкретные маршруты следует размещать над менее конкретными маршрутами. В приведенной выше конфигурации сначала отображаются маршруты со статическим путем, а затем - пустой путь, соответствующий маршруту по умолчанию. Маршрут с подстановочными знаками стоит последним, поскольку он соответствует каждому URL-адресу и должен выбираться только в том случае, если сначала не найдено ни одного другого маршрута.

С углового веб-сайта здесь

...