Angular url 不区分大小写

标签 angular typescript angular-ui-router

我是 Angular 新手。我有个问题。本地主机:4200/产品工作但本地主机:4200/产品不工作。我尝试;

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

    export class LowerCaseUrlSerializer extends DefaultUrlSerializer {
        parse(url: string): UrlTree {
        return super.parse(url.toLowerCase()); 
        }
    }
    .

    .

    .


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

但将所有字母变小。我想要所有的链接都可以工作。

/产品

/产品

/产品

/产品

……

app.module.ts

import { BrowserModule } from '@angular/platform-browser';
import { RouterModule, Route } from '@angular/router';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { AppComponent } from './app.component';
import { ProductComponent } from './product/product.component';
import { HomeComponent } from './home/home.component';

const routeConfig: Route[] = [
{
  path: '',
  component: HomeComponent
},
{
  path: 'product',
  component:  ProductComponent
}
];

@NgModule({
  declarations: [
    AppComponent,
    ProductComponent,
    HomeComponent
],
  imports: [
    BrowserModule, FormsModule, RouterModule.forRoot(routeConfig)
  ],
  providers: [],

app.component.ts

import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title = 'Title';
}

希望你能理解。抱歉我的英语不好。

最佳答案

您应该添加此provide语句,

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

app.module.ts 文件。您的应用程序模块中的提供程序为空。

关于Angular url 不区分大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48905161/

相关文章:

javascript - ChangeDetectionStrategy.OnPush 什么时候实际运行变更检测?

typescript - 如何将两个 typescript 泛型绑定(bind)在一起

javascript - angular ui router - 必须点击两次才能按预期更新 View (带演示)

javascript - 如何使用 Ionic 2 将 javascript 库导入到我的应用程序中?

angular - 如何使用mat-tab? mat-tab is not a known element 错误

javascript - 在 div angular 7 上传递值 onclick

angularjs - Controller 在 $state.go 之后仍然运行

Angular 5 : Can't resolve all parameters for Service

typescript - 如何在 Ionic 2 的 typescript 中使用异步函数?

javascript - 路由变更时的认证