如何使用ngComponentOutlet对多种类型的组件进行ngFor?

凯瑟姆·大卫

我有一个类似于whatsapp的聊天案例,其中许多类型的消息需要以不同的方式显示。

每个人都有自己的组件,如TextMessageComponentFileMessageComponent等。

我希望能够ngFor一次处理我的消息数组而不必ngIf遍历类型。

我听说ngComponentOutlet可能是解决方案,但发现很难实现。

任何建议,迷你演示或您发现有用的任何东西,将不胜感激!

阿拉文

在对象上具有属性应该可以帮助您

<div *ngFor="let item of items"  style="border: solid 1px; padding: 20px;margin: 20px;">
      <span style="color:red"> {{item.name}} </span>
      <ng-container *ngComponentOutlet="item.component"><ng-container>
  <br>
</div>

数组对象应为

items:Array<any> = [
{
  name: 'slider'
  component: sliderComponent

},
{
  name: 'user'
  component: usersComponent

},
{
  name: 'slider'
  component: sliderComponent

},
{
  name: 'alert danger'
  component: AlertDangerComponent
}

]

通过在AppModule中使用它们来确保已加载所有组件

entryComponents: [AlertDangerComponent, AlertSuccessComponent, usersComponent, sliderComponent ]

现场演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用类型提示为参数指定多种类型?

当某些书籍有多种类型时,您如何按类型(使用深度学习)对书籍进行分类?

如何使用RTypeProvider创建多种类型的数据框

如何使用picocli处理多种类型的期权

如何在NSUserDefaults中使用(多种类型)保存数组

如何使用mgo在单个集合中处理多种类型

如何使用Unity按名称注册多种类型?

领域-如何使用多种类型的对象构建供稿?

使用Jackson序列化器的Redis进行Spring缓存:如何处理多种类型的域对象

如何在同一个组件中定义多种类型的导航容器?

Inno Setup:如何拥有具有可选组件的多种类型

如何返回多种类型的对象

如何针对多种类型检查IS

如何允许多种类型的部署?

如何记录采用多种类型的参数

如何允许参数为多种类型?

在多种类型上使用GraphQL Fragment

使用多种类型的打字稿问题

如何在Kotlin中基于多种类型和值进行排序?

如何在 Swift 5 中为多种类型进行扩展

多种类型约束

多种类型的边界

弹性搜索对索引中的多种类型进行分页

是否可以在Rust中对多种类型进行模式匹配?

定位JavaScript时如何表示多种类型(联合类型)

如何指定采用多种类型的graphql类型?

使用TypeScript,如何扩展可以是多种类型之一的接口?

如何使用原因反应定义在函数签名中接受多种类型的绑定?

如何在打字稿中使用多种类型的数组调用map函数