首页
学习
活动
专区
圈层
工具
发布

角6路由
EN

Stack Overflow用户
提问于 2018-06-26 09:38:10
回答 3查看 1.5K关注 0票数 0

我想为错误404做一个简单的路由。如果链接损坏,我希望将用户重定向到404页。我的登录页面运行良好,但我看不到错误页面的地方。这是我的文件结构。这是我在尝试加载页面时得到的错误。我.你知道我会很棒的!

app.module.ts

代码语言:javascript
复制
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { HttpClientModule } from '@angular/common/http';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { RouterModule, Routes } from '@angular/router';
import { TranslateModule } from '@ngx-translate/core';
import 'hammerjs';

import { FuseModule } from '@fuse/fuse.module';
import { FuseSharedModule } from '@fuse/shared.module';

import { fuseConfig } from './fuse-config';

import { AppComponent } from './app.component';
import { FuseMainModule } from './main/main.module';
import { FuseSampleModule } from './main/content/sample/sample.module';
import { Login2Module } from './main/content/login-2/login-2.module';
import { Error404Module } from './main/content/errors/404/error404.module';

const appRoutes: Routes = [
  {
    path: '',
    redirectTo: '/login',
    pathMatch: 'full'
  },
  {
    path: '**',
    redirectTo: '/errors/404/error404',
  }
];

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    HttpClientModule,
    RouterModule.forRoot(appRoutes),
    TranslateModule.forRoot(),

    // Fuse Main and Shared modules
    FuseModule.forRoot(fuseConfig),
    FuseSharedModule,
    FuseMainModule,
    FuseSampleModule,
    Login2Module,
    Error404Module
  ],
  bootstrap: [
    AppComponent
  ]
})
export class AppModule {
}

error.module.ts

代码语言:javascript
复制
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';

import { MatIconModule } from '@angular/material';

import { FuseSharedModule } from '@fuse/shared.module';

import { FuseError404Component } from './error404.component';

const routes = [
  {
    path: 'error404',
    component: FuseError404Component
  }
];

@NgModule({
  declarations: [
    FuseError404Component
  ],
  imports: [
    RouterModule.forChild(routes),

    MatIconModule,

    FuseSharedModule
  ]
})
export class Error404Module {
}
EN

回答 3

Stack Overflow用户

发布于 2018-06-26 09:39:45

您正在重定向到'/errors/404/error404',但是没有这样的路由。

您应该添加404组件或重定向到现有路径。

根据您的评论更新

代码语言:javascript
复制
{
    path: '**',
    component: FuseError404Component,
}
票数 1
EN

Stack Overflow用户

发布于 2018-06-26 09:40:11

海事组织,你还没有宣布使用路径/errors/404/error404的任何路线

您需要为类似这样的路由配置添加-

代码语言:javascript
复制
{
        path: '/errors/404/error404',
        loadChildren: 'app/not-found-component/not-found-component.module#NotFoundComponentModule'
      },
票数 0
EN

Stack Overflow用户

发布于 2018-09-16 20:27:32

只需将RouterModule.forChild(routes)更改为RouterModule.forRoot(routes)即可。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51039611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档