Angular 5 - 带通配符的路由

Angular 5 - routing with wildcard

我尝试在我的模块中定义一个特定的路由,但我不知道如何管理它:

http://myserver.com/prefix-randomname/mycomponent

randomname 是一个真正的随机名称,带有随机字符,只为一个会话生成。我只知道prefix。但是我想开一条通往mycomponent.

的路线

最后但同样重要的是,我无法删除 url 中的 prefix-randomname,因为没有它服务器将无法工作。

不完全确定它是否适合您,但您可以在应用程序初始化时使用 APP_BASE_HREF 常量更改 baseUrl

import {APP_BASE_HREF} from '@angular/common';

export function appBaseFactory(appInitService: AppInitializationService): () => string {
    return (): string => `/${location.pathname.split('/')[1]}`
}

@NgModule({
  // ...,
  providers: [{provide: APP_BASE_HREF, useFactory: appBaseFactory}]
])
export class AppModule {}

我相信这会让您的路由器满意

如果 appBaseFactory 不起作用,您可能希望将其更改为立即 return location.pathname 内容,而不是 return 一个 Function