在Angular-2中动态绑定不同模板的一个组件

时间:2017-03-20 06:36:02

标签: angular typescript

我是Angular 2的新手。我看到一个组件总是与视图模板相结合,如

@Component({
  selector: 'page-sample',
  templateUrl: 'sample.html',
  providers: []
})

我们可以动态地将Angular 2组件重用于不同的模板吗?

1 个答案:

答案 0 :(得分:6)

这不能直接回答这个问题,但我想建议一种方法,你可以使用(几乎)相同的组件来获得不同的视图。

我通常会创建另一个组件,并让它继承基本组件,以便重用相同的功能。

//base component with functionality
@Component({
  selector: 'page-sample',
  templateUrl: 'sample.html',
  providers: []
})
export class BaseComponent{
}

创建一个继承BaseComponent的新组件,但可以使用不同的视图。

// another component with a different view.
@Component({
  selector: 'another-page-sample',
  templateUrl: 'another-sample.html',
  providers: []
})
export class AnotherComponent extends BaseComponent{
}