我有一个有角度的4单页应用程序。营销需求是检查我们是否可以拥有这样的网址:
www.abc.com/fancyname/x
www.abc.com/fancyname/y
www.abc.com/fancyname/z
目前显示的路线是: www.abc.com/#/x等等。
如何实施以上方法以及如何配置路线?
a)要删除#我们可以使用pathlocationstratergy,但我们需要尝试相同的。直到现在还没试过
b)我们可以使用childrouting但我们可能没有足够的时间在手,因为当前路由不是以这种方式完成的。
目前我们的路由完成如下:
const appRoutes: Routes = [
{ path: 'x', component: xComponent },
{ path: 'y', component: yComponent},
{ path: 'z', component: zComponent},
];
we want it to be like:
const appRoutes: Routes = [
{ path: 'fancyname/x', component: xComponent },
{ path: 'fancyname/y', component: yComponent},
{ path: 'fancyname/z', component: zComponent},
];
我们假设如果我们尝试实现像fancyname / x这样的东西,它将被视为子路由。我们无法将base-href操作为/ fancyname,因为它会破坏所有内部资产(如图像,字体等)的URL。
答案 0 :(得分:2)
如果我正确理解了这个问题,你应该只使用无组件父路线。
像这样:
const appRoutes: Routes = [{
path: 'fancyname',
children: [
{ path: 'x', component: xComponent },
{ path: 'y', component: yComponent },
{ path: 'z', component: zComponent }
]}
];
据我所知,这样做不应该在你的应用程序中改变任何功能,除了使路由“fancyname / childpath”。