所有路线的Angular 2国家/地区前缀

时间:2018-02-11 05:25:32

标签: angular angular2-routing angular2-services

我想设置像这样的角度2路线

HTP://本地主机/ US /家 HTP://本地主机/ US /接触 HTP://本地主机/在/ home HTP://本地主机/英寸/接触

在这里我们& in是国家代码。

我使用以下代码进行设置 export const routes:Routes = [

{
    path: ':country',
    children : [
        { path: '', component: HomePage },
        { path: 'home', component: HomePage },
        { path: 'contact', component: ContactPage },
        { path: 'search', component: SearchPage },
        { path: 'login', component: LoginPage },
        { path: 'signup', component: SignUpPage },
        { path: 'profile', component: ProfilePage},
        { path: '404', component: NotFoundPage},
        { path: '**', redirectTo: '404'}
    ] 
    pathMatch: 'prefix',
    useAsDefault:true
},
{ 
    path: '', 
    pathMatch: 'full',
    redirectTo: 'us/home'
},
{ path: '404', component: NotFoundPage},
{ path: '**', redirectTo: '404'}

];

&安培;工作顺利。

但问题是

HTP://本地主机/ anypath

不进入404

HTP://本地主机/ US / anypath HTT://本地主机/英寸/ anypath

以上是404并且正在进行相关工作

请检查,是否正确?

1 个答案:

答案 0 :(得分:0)

这不会起作用,因为当您添加第一条路线':country'时,它会自动获取并重视您作为国家/地区输入的路线。

无论你输入什么网址,他们都会进入第一条路线。

所以localhost/anypath可能会以localhost/us的方式将您带到主页。

您需要将路线重新组织为'home/:country'等等。