Css 如何解决错误';类AccordionGroup的名称应以后缀Component';

Css 如何解决错误';类AccordionGroup的名称应以后缀Component';,css,twitter-bootstrap,typescript,angular,Css,Twitter Bootstrap,Typescript,Angular,我在angular2和typescript中遇到错误。类AccordionGroup的名称应以后缀组件结尾。它不会停止执行,但会显示错误。我已在angular2和typescript中实现了accordion。这是我的代码。请帮助我,提前感谢 import {Component, Input, OnDestroy} from '@angular/core'; @Component({ selector: 'accordion', template:'<ng

我在angular2和typescript中遇到错误。类AccordionGroup的名称应以后缀组件结尾。它不会停止执行,但会显示错误。我已在angular2和typescript中实现了accordion。这是我的代码。请帮助我,提前感谢

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;
      }
    }
从'@angular/core'导入{Component,Input,OnDestroy};
@组成部分({
选择器:“手风琴”,
模板:“”
})
出口级手风琴{
组:数组=[];
addGroup(组:AccordionGroup):无效{
本.组.推(组);
}
关闭其他(打开组:AccordionGroup):无效{
this.groups.forEach((组:AccordionGroup)=>{
如果(组!==openGroup){
group.isOpen=false;
}
});
}
removeGroup(组:AccordionGroup):无效{
常量索引=this.groups.indexOf(组);
如果(索引!=-1){
这是一组拼接(索引,1);
}
}
}
@组成部分({
选择器:“手风琴组”,
模板:`
`
})
导出类AccordionGroup实现OnDestroy{
private _isOpen:boolean=false;
@Input()标题:字符串;
@输入()
设置等参线(值:布尔值){
这是一个数值;
如果(值){
这个。手风琴。其他(这个);
}
}
获取isOpen(){
把这个还给我;
}
建造师(私人手风琴:手风琴){
this.accordion.addGroup(this);
}
恩贡德斯特罗(){
this.accordion.removeGroup(this);
}
toggleOpen(事件:MouseeEvent):无效{
event.preventDefault();
this.isOpen=!this.isOpen;
}
}

根据此处的造型指南:

对于该类型的物品,一定要在符号名称后面加上常规后缀(如
组件
指令
模块
管道
,或
服务


因此,如果您将
accordionggroup
组件名称更改为
accordionggroupcomponent
,问题将得到解决。这适用于您的所有服务和组件。

@bentaliados您的意思是除了使用建议的约定之外?是的。我找到它:tslint.json{“组件类后缀”:false}