html – 如何在Angular 2路由中动态更改基本URL?

html – 如何在Angular 2路由中动态更改基本URL?,第1张

概述目前,我在我的项目中设置了路由.每个新用户都被重定向到: localhost:4200/default-path/login 一旦用户登录,它们就会被重定向到主模块,主模块有一些用户可以导航到的子路由. localhost:4200/default-path/home localhost:4200/default-path/home/account localhost:4200/default-p 目前,我在我的项目中设置了路由.每个新用户都被重定向到:

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']);}

但这似乎不起作用.

有任何想法吗?

解决方法@H_301_70@ 您可以通过为自定义 *** 作提供APP_BASE_href来以编程方式设置基本URL,而不是设置基本元素的href值.

这已经在这里讨论过了:https://stackoverflow.com/a/41674411/415790

总结

以上是内存溢出为你收集整理的html – 如何在Angular 2路由中动态更改基本URL?全部内容,希望文章能够帮你解决html – 如何在Angular 2路由中动态更改基本URL?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1046041.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存