2017-03-14 31 views
0

我可能只是缺少一些明显的东西,但我无法获得:id*id的工作。如何获取参数化路线

这是我使用的路由CONFIGS:

{ 
    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?,仍然一无所获)

+0

你的路线很好如果你只有console.log(params),你有什么?它是不确定的吗? – maximedubois

+0

@maximedubois不,它不会记录任何方式。 如果我导航到'http:// localhost:9000/char',路由设置为''char /:id?' 我被重定向到主页。而如果我导航到'http:// localhost:9000/char /'我得到404。 如果我提供一个值'http:// localhost:9000/char /?id = 42',我得到一个404 'vendor-bundle.js'脚本。 – Olian04

+0

@maximedubois nvm ...我是新来的单页框架,不知道我必须在网址中的路由名称前面加一个#。 谢谢:) – Olian04

回答

0

从一开始原来我曾经有过一个有点倒退。
这是什么在起作用:

http://localhost:9000/#char/foobar 

然后id将等于foobar