禁用仅区分大小写的特定URL

时间:2019-04-02 19:43:45

标签: angular

我在app.module.ts中实现了小写网址的实现,该规则适用于整个应用。 我只想在特定页面上禁用此规则,而在所有其他页面上保留小写字母。

这是我当前的代码: app.module.ts

import { UrlSerializer } from '@angular/router';    
import { LowerCaseUrlSerializerComponent } from './component/lower-case-url-serializer.component';

providers: [
    { provide: UrlSerializer, useClass: LowerCaseUrlSerializerComponent }
  ],

lower-case-url-serializer.component.ts:

import { DefaultUrlSerializer, UrlTree } from '@angular/router';

export class LowerCaseUrlSerializerComponent extends DefaultUrlSerializer {
    parse(url: string): UrlTree {
        // Excluding tokens
        if(url.indexOf("token") > 1)
            return super.parse(url);

        return super.parse(url.toLowerCase());
    }
}

在app.routing.ts文件中,我仅能为特定路线做些什么吗?

export const routes: Routes = [
  { path: 'password-reset', component: PasswordResetComponent },
];

感谢您的宝贵时间,很高兴看到一些植入代码示例。

0 个答案:

没有答案