【发布时间】:2016-05-24 01:59:16
【问题描述】:
我正在使用:
"@angular/core": "2.0.0-rc.1"
"@angular/router": "2.0.0-rc.1"
我正在尝试为我的主页设置多个参数,我的路线是
@Routes([
{path: '/', component: HomeComponent},
{path: '/:mode', component: HomeComponent},
{path: '/:mode/:email', component: HomeComponent}
]);
当我访问 http://localhost:2368/test 时,它可以工作,我得到
RouteParams.params.mode == '测试'
但是,当我尝试通过访问 http://localhost:2368/test/email 添加第二个参数时,我得到:
GET http://localhost:2368/test/js/app.js 404(未找到)
浏览器正在尝试从 test/js url 加载 app.js,这显然不存在,因为 test 被认为是我的第一个参数。
当我尝试添加一个真实的电子邮件地址作为我得到的参数时,我遇到了另一个问题:
无法获取 /test@email.com
任何帮助将不胜感激。
编辑:
由于我的 webpack 配置使用了相对路径而导致的 404 错误。
但是我仍然无法运行带有两个路由器参数的url
【问题讨论】:
-
那么在修复路径后 404 现在消失了吗?你现在得到什么错误?我猜你的问题是stackoverflow.com/questions/31415052/…
-
好吧,基本上我需要为一条路线设置多个参数 {path: '/page/:param1/:param2/:param3', component: HomeComponent} 但是当我导航到 page/value1/value2 /value3 我得到:无法匹配任何路由。当前段:'value3'。可用路线:['/page/:param1/:param2/:param3']
-
这听起来像是一个新路由器错误。你能试着颠倒
@RouteConfig()(/最后,/:mode/:email第一)中的路线顺序吗? -
顺序好像没什么区别,我也试过只有一条路线
-
如何导航到
page/value1/value2/value3?