@angular/router 中的通配符参数
wildcard parameters in @angular/router
我正在使用@angular/router@版本2.0.0-rc.1
我似乎无法让通配符参数起作用,而且从阅读代码来看似乎没有支持。
- 我说的 rc.1 路由器不支持通配符参数是否正确?
- 是否会重新添加此功能? (我在 https://docs.google.com/document/d/1WLSNV3V1AKdwLwRiLuN7JqbPBKQ_S5quRlcT5LPIldw/edit#heading=h.blfh5ya9sf5r 中没有看到通配符参数,链接到 angular 变更日志的设计文档)
- 有人有偷偷摸摸的解决方法吗?
您可以在 app.ts
中这样做
import {Home} from './Home';
...
@RouteConfig([
{ path: '/home', component: Home, name: 'Home' },
{ path: '/**', redirectTo: ['Home'] }
])
在这个例子中,我们只设置了一条真实的路由,那就是/home路由。我们还指示应用程序将任何对无法识别的路由的请求重定向到 Home 组件。每个 RouteDefinition 都需要一个路径、一个名称,以及一个组件、加载器或 redirectTo。
使用 Angular 2.0.0(最终版本)和新路由器,您通常可以使用通配符,现在使用的路径不带斜杠。
注意:
路线的顺序很重要:它应该从最具体到最不具体。所以对于下面这个简单的例子,路线'**'(匹配任何东西)应该放在最后,所以所有其他可能的路线都会被前面的路线覆盖。
const routes: Routes = [
{
{ path: 'login', component: LoginComponent },
{ path: 'register', component: RegisterComponent },
{ path: '**', component: LoginComponent },
];
我正在使用@angular/router@版本2.0.0-rc.1
我似乎无法让通配符参数起作用,而且从阅读代码来看似乎没有支持。
- 我说的 rc.1 路由器不支持通配符参数是否正确?
- 是否会重新添加此功能? (我在 https://docs.google.com/document/d/1WLSNV3V1AKdwLwRiLuN7JqbPBKQ_S5quRlcT5LPIldw/edit#heading=h.blfh5ya9sf5r 中没有看到通配符参数,链接到 angular 变更日志的设计文档)
- 有人有偷偷摸摸的解决方法吗?
您可以在 app.ts
中这样做import {Home} from './Home';
...
@RouteConfig([
{ path: '/home', component: Home, name: 'Home' },
{ path: '/**', redirectTo: ['Home'] }
])
在这个例子中,我们只设置了一条真实的路由,那就是/home路由。我们还指示应用程序将任何对无法识别的路由的请求重定向到 Home 组件。每个 RouteDefinition 都需要一个路径、一个名称,以及一个组件、加载器或 redirectTo。
使用 Angular 2.0.0(最终版本)和新路由器,您通常可以使用通配符,现在使用的路径不带斜杠。
注意:
路线的顺序很重要:它应该从最具体到最不具体。所以对于下面这个简单的例子,路线'**'(匹配任何东西)应该放在最后,所以所有其他可能的路线都会被前面的路线覆盖。
const routes: Routes = [
{
{ path: 'login', component: LoginComponent },
{ path: 'register', component: RegisterComponent },
{ path: '**', component: LoginComponent },
];