我被要求以 Angular 方式创建一个网站,并在 URL 级别接受客户端的直接参数。
例如,销售代理将拥有类似 www.website.com/agent/2021 的网站并根据他的 ID(本例中为 2021)自定义网站。我通过在routing.module中设置它来使这项工作很好:
{ path: '', component: AgentComponent, pathMatch: 'full' },
{ path: '**', component: AgentComponent },
哪里
path: 'agent/:code', component: AgentComponent,
一切都很完美,除了我浏览 www.website.com 时除外直接,它显示一个空白页。这很好,因为 app.component.ts 处的代码首先运行。我在数据库中设置了代理 ID 1,因此当有人直接浏览 URL(无需路由)时,我可以路由到 www.website.com/agent/1但此时,我无法判断用户是否访问了直接 URL,或者包含路由的 URL(例如 www.website.com/agent/2021 )
是否有解决方案来检测客户端是否直接访问 URL ( www.website.com ),在这种情况下,重定向到 www.website.com/agent/1 ,或者如果客户来自直接路线 ( www.website.com/agent/2021 ),请让他保持在该路线上?
谢谢。
最佳答案
你把它颠倒过来了。
{ path: '**', redirectTo:'agent/1' },
{ path: '', component: AgentComponent },
关于angular - 直接 URL 路由工作正常,但不适用于域名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66660191/