首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rout没有加载组件。

Rout没有加载组件。
EN

Stack Overflow用户
提问于 2018-08-20 10:52:43
回答 2查看 97关注 0票数 1

我试图在社交媒体公司之间导航,但当我点击公司时,它的组件正在加载,但当我访问社交媒体时,我会出错

错误我得到-错误:未知(承诺):错误:不能匹配任何路由。URL段:“社交媒体”错误:无法匹配任何路由。URL片段:“社交媒体”

我把代码的细节写在下面

app-routing.module.ts文件

代码语言:javascript
复制
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { Routes } from '@angular/router';
import { D7socialMediaComponent } from './d7social-media/d7social-media.component';
import { CompanyComponent } from './company/company.component';

@NgModule({
  imports: [
    CommonModule
  ],
  declarations: []
})
export class AppRoutingModule { }
export const routes: Routes = [

  {path: 'social-media' , component: D7socialMediaComponent},
   {path: 'company' , component: CompanyComponent},

];

app.component.html

代码语言:javascript
复制
 <nav>
    <a routerLink="/social-media"> Social Media </a>
    <a routerLink="/company"> Company </a>
    </nav>

    <router-outlet></router-outlet>

d7social-media.component.ts

代码语言:javascript
复制
import { Component, OnInit } from '@angular/core';
@Component({
  selector: 'app-d7social-media',
  templateUrl: './d7social-media.component.html',
  styleUrls: ['./d7social-media.component.css']
})
export class D7socialMediaComponent implements OnInit {

  constructor() { }

  ngOnInit() {
  }

}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-20 10:55:09

在您的app-routing.module中添加:

代码语言:javascript
复制
import { Routes, RouterModule } from '@angular/router'; 
...

    imports: [
            CommonModule,
            RouterModule.forRoot(routes),
    ]

将应用程序模块更改为:

代码语言:javascript
复制
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterModule, Routes } from '@angular/router';
import { D7socialMediaComponent } from './d7social-media/d7social-media.component';
import { CompanyComponent } from './company/company.component';

export const routes: Routes = [

  {path: 'social-media' , component: D7socialMediaComponent},
  {path: 'company' , component: CompanyComponent},

];

@NgModule({
  imports: [
    CommonModule,
    RouterModule.forRoot(routes) 
  ],
  declarations: []
})
export class AppRoutingModule { }
票数 2
EN

Stack Overflow用户

发布于 2018-08-20 11:05:58

必须在RouterModule.forChild(routes)导入数组中使用RouterModule来声明,如果使用lazyModule概念,则需要使用声明路由。

代码语言:javascript
复制
    import { NgModule } from '@angular/core';
    import { CommonModule } from '@angular/common';
    import { RouterModule, Routes } from '@angular/router';
    import { D7socialMediaComponent } from './d7social-media/d7social-media.component';
    import { CompanyComponent } from './company/company.component';

    const appRoutes: Routes = [
         {path: 'social-media' , component: D7socialMediaComponent},
         {path: 'company' , component: CompanyComponent},
    ];

    @NgModule({
      imports: [
        CommonModule,
        RouterModule.forRoot(ppRoutes)
      ],
      declarations: []
    })
    export class AppRoutingModule { }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51929173

复制
相关文章

相似问题

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