角2 | 指令类型"{}"的参数不可分配给

Gil*_*Gil 34 angular

我是Angular 2的菜鸟.我正在做YouTube教程,但是每个教程都有directives:我被卡住的部分.

app.component.ts

import { Component } from '@angular/core';
import { HeaderComponent } from './components/header/header.component'
@Component({
  selector: 'my-app',
  template: '<h1>Hello</h1><header></header>',
  directives: [HeaderComponent]
})
export class AppComponent { }
Run Code Online (Sandbox Code Playgroud)

错误输出是:

Argument of type '{ selector: string; template: string; directives: typeof HeaderComponent[]; }' is not assignable to parameter of type 'ComponentMetadataType'.at line 6 col 3
Run Code Online (Sandbox Code Playgroud)

header.component.ts

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

@Component ({

  selector: 'header',
  template: '<h2>hit!</h2>'

})
export class HeaderComponent { }
Run Code Online (Sandbox Code Playgroud)

这是错误的屏幕截图 在此输入图像描述

yur*_*zui 72

directivesRC.6中移除了财产

你应该将它移动到declarations你的NgModule装饰器的属性

@NgModule({
  imports:      [ BrowserModule ],
  declarations: [ AppComponent, HeaderComponent ], <== here
  bootstrap:    [ AppComponent ]
})
export class AppModule { }
Run Code Online (Sandbox Code Playgroud)