Úhlové výchozí cesta, a to vždy předem

0

Otázka

Mám dvě trasy :

  • home [ " ]
  • o [ 'about' ]

Když jdu do /o přímo ve svém prohlížeči, jak jsem si všiml 2 věcí :

  • můj domov modul je předinstalovaný (vzhledem k tomu, že jsem požádal /o)
  • URL je rewritted : /o -> / -> /o

aplikace-směrování.modul.t

import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';

const routes: Routes = [
  { path: '', loadChildren: () => import('./routes/home/home.module').then(m => m.RoutesHomeModule) },
  { path: 'about', loadChildren: () => import('./routes/about/about.module').then(m => m.RoutesAboutModule) },
  { path: '**', redirectTo: '', pathMatch: 'full' }
];

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

app.komponenta.ts

import { Component, OnInit } from '@angular/core';
import { NavigationStart, Router } from '@angular/router';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.less'],
})
export class AppComponent implements OnInit {

  constructor(
    private router: Router,
  ) { }

  ngOnInit(): void {
    this.router.events.subscribe(event => {
      if (event instanceof NavigationStart) {
        // outputs "/about" but NEVER "/"
        console.log(event.url);
      }
    });
  }

}

Úhlové : 13.0.2
Chrome : 96.0.4664.55
OS : MacOS 12.0.1

angular lazy-loading
2021-11-24 05:42:28
1

Nejlepší odpověď

0

Přeskočit předpětí domů modulu můžete aktualizovat trasu pole jako sledování.

const routes: Routes = [
  { path: 'home', loadChildren: () => import('./routes/home/home.module').then(m => m.RoutesHomeModule)},
  { path: 'about', loadChildren: () => import('./routes/about/about.module').then(m => m.RoutesAboutModule) },
  { path: '**', redirectTo: '', pathMatch: 'full' }
];

To může omezit předpětí.

Můžete určit, jak path: 'home' místo path: ''.

2021-11-24 12:54:52

Jaké změny jste provedli ?
Ziad

Aktualizováno moje odpověď @Ziad
Jai Saravanan

Domácí modulu není předinstalovaný, ale stále mám URL rewritting : /o -> / -> /o
Ziad

Takže když dáte /about to je přesměrování na` /` ?
Jai Saravanan

Ano, pak to jde zpět k /o
Ziad

Zkontrolujte, zda váš kód s konstrukční části nebo auth.stráž, žádné přesměrování logiku. Vaše trasy se zdá být dobré.
Jai Saravanan

Je to pracovní @Ziad ?
Jai Saravanan

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................