Angular2渲染模板

时间:2016-11-10 13:24:54

标签: angular angular2-template

我有两个组件,ComponentA使用ComponentB。 ComponentB是一个表,可以检索数据,选项和定义表内容的模板。 我希望ComponentB成为一个组件来呈现不同的表。我不知道如何在Angular2 v2.1.0中渲染模板。我发现像DynamicComponentLoader和ComponentResolver这样的东西都已经过时了。 Angular2 2.1.0提供哪些组件来渲染模板?

ComponentA:

@Component({
    'template':<my-table [template]="template" [options]="options" [data]="data"></mytable>
)}
export class ViewA{
  template:string;
  ngOnInit(){
      this.template = `
          <tr
           *ngFor="let item of items">
             <td>{{item.name}}</td>
          </tr>
      `
  }
}

以componentB:

@Component({
selector: 'my-table',
'template':`
   <table>
     <thead>
        <th *ngFor="let conf of config.columns">
            {{conf.title}}
        </th>
     </thead>
     <tbody #tBody>
     </tbody>
   </table>
`
)}
export class ViewB{
@Input('template') template:string;
@Input('data') data:MyData;
@Input('options') options:MyOptions;

constructor(){
    //todo: create template element, append template element into the tbody element
}

} }

1 个答案:

答案 0 :(得分:2)

我刚看过Rob Wormald关于这个主题的视频。它有点长,但很好地了解如何自己做这件事。

https://www.youtube.com/watch?v=ZqGvilzDbac