angular - 如何在 Angular 2 中创建高阶组件

标签 angular

高阶组件 (HOC) 是 React 社区中常见的一种模式。参见 this article如果你不知道什么是 HOC

它们在 Angular 2 中有意义吗? 如何制作 HOC? 有例子吗?

最佳答案

使用NgComponentOutlet

简单案例

@Component({selector: 'hello-world', template: 'Hello World!'})
class HelloWorld {
}

@Component({
  selector: 'ng-component-outlet-simple-example',
  template: `<ng-container *ngComponentOutlet="myComponent"></ng-container>`
})
class NgTemplateOutletSimpleExample {
  // This field is necessary to expose HelloWorld to the template.
  myComponent= HelloWorld;
}

包括提供 Injector 和 Content 的高级案例在 official documentation 中可用。

关于angular - 如何在 Angular 2 中创建高阶组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40061129/

相关文章:

css - 将 CSS 应用于路由组件

Angular 谷歌图表 : how to set different colors to columns in column chart

angular - (redux/ngrx) 你会建议存储 UI 相关状态吗?

angular - 如何在 Angular 8 中将对象数组导出到 Excel

Angular4 添加 WMS (openlayers)

javascript - Angular 6过滤多个表列

Angular 7 刷新或路线更改缓慢

调用直接 url 路径时,Angular 4 路由不起作用

Angular 5 RxJs concatMap、switchMap、mergeMap 哪个?

angular - 将模型/实体/对象添加到 Angular 2 中的 NgModule