首页 > 解决方案 > 错误:无法匹配任何路由。URL 段:“许可证”(来自子文件夹的 Angular)

问题描述

当 Angular 项目作为应用程序而不是主网站托管时,我在 Angular 路由方面遇到了一些问题。

因此,角度应用程序托管在example.it/licenses/,当我尝试转到以下路径时,出现以下错误:

main.ed82e0a41cbb59f8be1c.js:1 ERROR Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'licenses'
Error: Cannot match any routes. URL Segment: 'licenses'

但是,当同一个项目作为主网站运行时,而不是从子文件夹作为应用程序,一切正常......

这是路由代码:

import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { LicensesComponent } from './licenses/licenses.component';


const routes: Routes = [
  {path: "", pathMatch: 'full', component: LicensesComponent}
];

@NgModule({
  imports: [RouterModule.forRoot(routes, {
    initialNavigation: 'enabled'
})],
  exports: [RouterModule]
})
export class AppRoutingModule { }

标签: angulariis

解决方案


const routes: Routes = [
  {path: "", pathMatch: 'full', redirectTo: 'licenses',
  {path: 'licenses', component: LicensesComponent}
];

您的路线只包含空白,当您导航到 /licenses 时,您应该将“许可证”添加到您的路线中。


推荐阅读