使用angular4我可以使用以下语法链接到组件:
<a routerLink="MYLINK">link</a>
但是,我不清楚MYLINK
的语法。这是根据RFC 3986的路径,即必须遵循URL逃脱规则吗?还是Unescaped路径段的串联?
例如,我会写
<a routerLink="/root/my%20page">link</a>
或
<a routerLink="/root/my page">link</a>
这是在Angular的任何地方记录的?
我的期望是,经过路径时,路径必须是编码的。通过一系列段时,不会编码段。
crea un Archivo customurlserializer.ts
import {urlserializer,urltree,defaulturlserializer}来自'@angular/router';
export class CustomUrlSerializer implements UrlSerializer {
parse(url: any): UrlTree {
let dus = new DefaultUrlSerializer();
return dus.parse(url);
}
serialize(tree: UrlTree): any {
let dus = new DefaultUrlSerializer(),
path = dus.serialize(tree);
// use your regex to replace as per your requirement.
return path.replace(/%20/g,' ');
}
}
`
导入en tu app.module.ts
提供商:[{fusis:urlserializer,useclass:customUrlserializer}],