首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Angular -元件蓝图

Angular -元件蓝图
EN

Stack Overflow用户
提问于 2017-03-07 23:02:53
回答 1查看 616关注 0票数 2

我有一个组件,它就像许多组件的蓝图。它们都使用相同的方法。我怎样才能做出一张蓝图呢?

我不想重复所有其他组件中的方法。如果我需要改变一些功能,我只想重写一个方法。

代码语言:javascript
复制
@Component({
    template: `
       <datagrid (onRefresh)="loadCollection($event)" (onRowSelect)="loadRecord($event)" (onCreateRecord)="createRecord()"></datagrid>  
    `,
    providers: [CollectionService]
})
export class ListComponent implements OnInit{

    loadCollection($event){
      ...
    }


    loadRecord($event){
      ...
    }

    createRecord(){
      ...
    }
}
EN

回答 1

Stack Overflow用户

发布于 2017-03-07 23:17:01

请在下面尝试,

代码语言:javascript
复制
export class BaseComponent { 
  name: string ="";
  someCommonFunction(){
    return `Method called from Base Component from child ${this.name}`
  }
}

@Component({
  selector: 'child-1',
  template: `{{someCommonFunction()}}`
})
export class ChildComponent1 extends BaseComponent {
  constructor(){
    super();
    this.name = "ChildComponent1";
  }      
}

@Component({
  selector: 'child-2',
  template: `{{someCommonFunction()}}`
})
export class ChildComponent2 extends BaseComponent { 
   constructor(){
    super();
    this.name = "ChildComponent2";
  }
}

这是Plunker!!

希望这能有所帮助!!

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42651583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档