如何在 Angular 中使用 ProvideRouter 启用哈希路由?

Ren*_*ers 4 angular

如何在我的 Angular 应用程序中provideRouter使用哈希路由?@angular/router

以前,我使用useHash: truewithRouterModule.forRoot()来启用基于哈希的路由,例如/#/page1or /#/page2。现在我正在使用provideRouter,但我找不到启用哈希路由的方法。

这是我当前的设置:

# main.ts
import { bootstrapApplication } from '@angular/platform-browser';
import { provideRouter } from '@angular/router';
import { routes } from './app/app.routes';
import { AppComponent } from './app/app.component';

bootstrapApplication(AppComponent, {
  providers: [
    importProvidersFrom(IonicModule.forRoot({})),
    provideRouter(routes),
  ],
});
Run Code Online (Sandbox Code Playgroud)

Ren*_*ers 10

要在 Angular 中启用哈希路由provideRouter,您可以使用withHashLocationfrom @angular/router

这是一个例子:

import { bootstrapApplication } from '@angular/platform-browser';
import { provideRouter, withHashLocation } from '@angular/router';
import { routes } from './app/app.routes';
import { AppComponent } from './app/app.component';

bootstrapApplication(AppComponent, {
  providers: [
    provideRouter(routes, withHashLocation()),
  ],
});
Run Code Online (Sandbox Code Playgroud)

通过添加withHashLocation()作为参数provideRouter(),路由器将被配置为使用基于哈希的路由。