我有一个围绕在Apache上运行的角度2构建的网站。不同的“组”使用相同的网站(和相同的API)。假设有两组:蜜蜂和黄蜂。我的角度路由文件如下所示:
{
path: '',
redirectTo: 'groupe/1',
pathMatch: 'full'
},
{
path: 'groupe',
children: [
{
path: ':groupe',
children: [
{
path: '',
component: HomePage,
},
...
要访问群组,我只需转到http://myws.com/group/1(蜜蜂)和http://myws.com/group/2(蜜蜂)。然后,每个组的页面基本相同(具有不同的内容,从API加载),例如:http://myws.com/group/1/page/21。
现在是棘手的部分。首先,我想从简化的显式网址访问每个“群组”:例如http://myws.com/bees。我可以通过将以下代码添加到路由器来完成此操作:
{
path: 'bees',
redirectTo: 'groupe/1',
pathMatch: 'prefix'
},
问题是,路由将URL更改回/ group / 1。 有没有办法让/ bees永久化,隐藏/ group / 1?
现在,我还希望从特定域访问我的蜜蜂群,例如http://www.bees.com。页面应该呈现为http://www.bees.com/page/21 有角度或Apache的方法吗?
答案 0 :(得分:0)
嗯,在Angular方面(意味着.com之后的所有内容),你可以这样做
export const bugRoutes: Routes = [
{ path: 'bees', canActivate: [MyBeeGuard], children: [
{ path: '', component: BeeHomeComponent },
{ path: '**', component: BeeHomeComponent }
]},
{ path: 'wasps', canActivate: [MyWaspGuard], children: [
{ path: '', component: WaspHomeComponent},
{ path: '**', component: WaspHomeComponent}
]},
{ path: '**', component: ChoseBugHomeComponent }
];
这样,无论路线如何,您的用户都将被重定向到任何错误回家。如果他根本没有输入任何路线,他将被重定向到一个“允许”他选择选择哪个错误的组件