路由''的配置无效:路由必须指定路径或匹配器

问题描述 投票:6回答:2

AppRouting.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core'; 
import { Routes, RouterModule } from '@angular/router';
import { HomeComponent } from '../buyer/home/home.component';
const routes: Routes = [
   {path: '', redirectTo:'buyer', pathMatch:"full"}
]
@NgModule({
  declarations:[],
  imports:[
    BrowserModule,
    RouterModule.forRoot(routes)
  ],
   exports:[RouterModule]
})

export class AppRoutingModule {}

BuyerRouting.ts

import {CommonModule} from '@angular/common';
import {NgModule} from '@angular/core'; 
import { Routes,RouterModule } from '@angular/router';

import { WelcomeComponent } from './welcome/welcome.component';
import { HomeComponent } from './home/home.component';

@NgModule({
declarations:[],
imports:[
    CommonModule,
    RouterModule.forChild([
        { path: 'buyer', component: HomeComponent},
        { path: '', redirectTo: '/welcome', pathMatch: 'prefix'},
        { path: 'welcome', component: WelcomeComponent}
    ])
],
exports:[RouterModule]
})

export class BuyerRoutingModule {}

当我为应用程序提供服务时。构建成功创建,但当我运行应用程序时,我收到一个错误。我还通过删除emtpy路径检查仍然会出现此错误。

main.ts:12 Error: Invalid configuration of route '': routes must have either 
a path or a matcher specified
angular angular2-routing angular-routing angular-route-segment
2个回答
1
投票

无论在NgModule配置中(包括RouterModule,TranslateModule等),您都只能使用导出的变量和函数(如URLMatcher的情况),但您无法使用函数来计算值。

资料来源:https://github.com/angular/angular/issues/18662

因此,根据上述解决方案,您可能有一些路由(包括子路由),您正在使用任何未导出的变量或函数来计算路由。校验。


0
投票

这是一个棘手的错误。 我正在使用一些由某些函数填充的对象,并且AoT静态地分析我的对象并且它是空的,所以我必须填充并定义AoT的完整对象,我的计划是以某种方式动态地在单个文件上更新它,就像在预制钩子。 我正在祈求常春藤没有这个限制!

© www.soinside.com 2019 - 2024. All rights reserved.