目前,我的项目中已经设置了路由。每个新用户都会被重定向到:
localhost:4200/default-path/login
一旦用户登录,他们将被重定向到主页模块,该模块有一些子路由供用户导航。
localhost:4200/default-path/home
localhost:4200/default-path/home/account
localhost:4200/default-path/home/account/profile
localhost:4200/default-path/home/dashboard
...等等。
现在,粗体部分已经在主页模块中设置好了,不需要进一步编辑。但是,我想将 default-path
更改为其他内容。
假设每个用户都属于三个项目之一:蓝色、红色或绿色项目。这些信息仅在用户提交凭据并点击登录按钮后才可用。
我想要的是,在登录后,路由应该是:
localhost:4200/project-blue/home
localhost:4200/project-red/home
localhost:4200/project-green/home
请注意,粗体部分不是具有不同关联组件的不同模块,它们只是我想在URL中看到的常量。
目前,我的索引中的 <base>
标签类似于 <base href='/'>
,我正在尝试编辑此属性。我得到的是:
processLoginSuccess(loginTicket): void {
const routeName = loginTicket.baseUrl // returns 'project-red'
let b = document.getElementsByTagName('base')[0]
b.setAttribute('href', routeName )
this._router.navigate(['/home']);
}
但是这似乎并不起作用。
有什么想法吗?