Angular4 RouterLink中的URL逃脱



使用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}],

最新更新