Routes 如何使参数化路由正常工作
我可能只是错过了一些明显的东西,但我无法让Routes 如何使参数化路由正常工作,routes,aurelia,url-parameters,Routes,Aurelia,Url Parameters,我可能只是错过了一些明显的东西,但我无法让:id或*id工作 这是我正在使用的路由配置: { route: 'char/:id', name: 'char', moduleId: 'modules/char/char', href: "char" } 这是我在char.ts中得到的代码: export class Char { activate(params: {id: string}) { console.log(params.id); } } 现在我似乎无
:id
或*id
工作
这是我正在使用的路由配置:
{
route: 'char/:id',
name: 'char',
moduleId: 'modules/char/char',
href: "char"
}
这是我在char.ts中得到的代码:
export class Char {
activate(params: {id: string}) {
console.log(params.id);
}
}
现在我似乎无法从地址栏为id
赋值。
这个的语法是什么
(我也尝试过将参数设置为可选,使用
:id?
,但仍然没有任何结果)结果是,我从一开始就有点倒退了这就是工作原理:
http://localhost:9000/#char/foobar
那么
id
将等于foobar
您的路线很好如果您只使用console.log(params),您有什么?它是未定义的吗?@maximedubois不,它不会记录任何东西。如果我导航到http://localhost:9000/char
当路由设置为'char/:id?
时,我会被重定向到主页。而如果我导航到http://localhost:9000/char/
我得到了404。如果我提供一个值http://localhost:9000/char/?id=42
我在供应商bundle.js
脚本上得到了一个404。@maximedubois nvm。。。我不熟悉单页框架,不知道我必须在url中的路由名称前面加一个#。谢谢你:)