Je suis débutant dans Angular 2 et j'utilise la version finale de Angular 2. J'ai un étrange problème avec cela . C'est mon databinding.component.ts code:
import { Component } from '@angular/core';
import {PropertyBindingComponent} from './property-binding.component';
import {EventBindingComponent} from './event-binding.component';
@Component({
selector: 'fa-databinding',
templateUrl: 'databinding.component.html',
styleUrls: ['databinding.component.css'],
directives: [PropertyBindingComponent, EventBindingComponent]
})
et ceci est une paix de mon app.module.ts code:
import { PropertyBindingComponent } from './databinding/property-binding.component';
import { EventBindingComponent } from './databinding/event-binding.component';
@NgModule({
declarations: [
AppComponent,
OtherComponent,
AnotherComponent,
DatabindingComponent,
PropertyBindingComponent,
EventBindingComponent
]
Ce code ne fonctionne pas correctement:
ERROR in [default] /home/tornado/work/first-app/src/app/databinding/databinding.component.ts:11:2
Argument of type '{ selector: string; template: any; styles: any[]; directives: (typeof PropertyBindingComponent | ...' is not assignable to parameter of type 'Component'.
Object literal may only specify known properties, and 'directives' does not exist in type 'Component'.
Que devrais-je faire?!?!
directives
a été supprimé du composant . Consultez les éléments suivants: https://stackoverflow.com/a/39410642/5487673
La solution au problème consiste simplement à supprimer l'attribut directives
de votre composant. Tant que les composants énumérés sous votre attribut directives
sont déclarés au niveau NgModule
, vous devriez avoir raison.
J'ai rencontré ce cas et résolu… .. En tant que directives, vous n'avez pas besoin de les importer et de les connecter à un composant spécifique. Vous pouvez les utiliser comme ceci.
Tout d’abord, importez-les sur le fichier app.module.ts . Deuxièmement, ajoutez la directive importée dans les déclarations .