enden Ich habe einen Fehler in angular2 und typescript.The Name der Klasse AccordionGroup sollte mit dem Suffix Component.Its nicht die Ausführung beenden aber Es zeigt den Fehler. Ich habe das Akkordeon in angular2 und typescript implementiert. Hier ist mein Code. Bitte helfen Sie mir, danke im Voraus.So beheben Sie den Fehler 'Der Name der Klasse AccordionGroup sollte mit dem Suffix Component'
import {Component, Input, OnDestroy} from '@angular/core';
@Component({
selector: 'accordion',
template:'<ng-content></ng-content>'
})
export class Accordion {
groups: Array<AccordionGroup> = [];
addGroup(group: AccordionGroup): void {
this.groups.push(group);
}
closeOthers(openGroup: AccordionGroup): void {
this.groups.forEach((group: AccordionGroup) => {
if (group !== openGroup) {
group.isOpen = false;
}
});
}
removeGroup(group: AccordionGroup): void {
const index = this.groups.indexOf(group);
if (index !== -1) {
this.groups.splice(index, 1);
}
}
}
@Component({
selector: 'accordion-group',
template: `
<div class="errors-cont" [ngClass]="{'panel-open': isOpen}">
<div class="acc-header" (click)="toggleOpen($event)">
<ng-content select="error-header"></ng-content>
</div>
<div class="acc-desc" [hidden]="!isOpen">
<ng-content select="error-body"></ng-content>
</div>
</div>
`
})
export class AccordionGroup implements OnDestroy {
private _isOpen: boolean = false;
@Input() heading: string;
@Input()
set isOpen(value: boolean) {
this._isOpen = value;
if (value) {
this.accordion.closeOthers(this);
}
}
get isOpen() {
return this._isOpen;
}
constructor(private accordion: Accordion) {
this.accordion.addGroup(this);
}
ngOnDestroy() {
this.accordion.removeGroup(this);
}
toggleOpen(event: MouseEvent): void {
event.preventDefault();
this.isOpen = !this.isOpen;
}
}
Danke sein das Problem zu lösen – Mohit
Wie man diesen Fehler unterdrückt? –
@BenTaliadoros meinst du neben der vorgeschlagenen Konvention? – echonax