Angular 8-在其他组件内部显示组件

时间:2019-09-30 16:51:19

标签: angular typescript components

问题:

app.component.html

中显示(自定义)导航组件(名为topnav 的导航组件)

app.module.ts

   import { TopnavComponent } from './topnav/topnav.component';

   @NgModule({
         declarations: [
            AppComponent,
            TopnavComponent,
         ]
    })

*已编辑以在声明内显示AppComponent

app.component.html

 <topnav></topnav>
  

解决方案

<app-topnav></app-topnav>

topnav.component.ts

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

@Component({
  selector: 'app-topnav',
  templateUrl: './topnav.component.html',
  styleUrls: ['./topnav.component.css']
})
export class TopnavComponent implements OnInit {

  constructor() { }

  ngOnInit() {
  }

}

*已编辑以显示topnav.component.ts

不确定我在这里缺少什么。我尝试尝试不同的指令,以不同的方式导入和导出。我知道这是Angular背后的基本思想,但遇到了麻烦,已经在Angular 2中进行了记录,但是他们的解决方案在Angular 8中没有解决。

仍然出现此错误:

1. If 'topnav' is an Angular component, then verify that it is part of this module.
2. To allow any element add 'NO_ERRORS_SCHEMA' to the '@NgModule.schemas' of this component. ("
  <div class="container">

   [ERROR ->]<topnav></topnav>

  </div>
"): ng:///AppModule/AppComponent.html@4:3

在app.module.ts中添加imports:[]时,据我了解,仅基于我得到的错误来获取模块。

1 个答案:

答案 0 :(得分:1)

您使用了错误的选择器。将app.component.html替换为:

 <app-topnav></app-topnav>