使用 *ngFor 索引将多个迭代分组在一行中

2024-02-02

我一直在尝试构建一个具有多列的动态输入对话框。基本上有一个字段列表,我想为每两个字段构造一行。我的尝试看起来像这样(甚至不确定这是否可能)

<div *ngFor="let f of fields; let i = index">
    <div class="row" *ngIf="i % 2 = 1">
        <div *ngFor="let field of [fields[i],fields[i+1]]">
            <div class="col-3"><label>{{field.key}}</label></div>
            <div class="col-3"><input [(ngModel)]="object[field.key]"></div>
        </div>
    </div>
</div>

fields 是对象中所有字段的映射,如下所示:

[{key: fieldName,value: fieldValue},...]

显然,由于我在这里我的代码无法正常工作,因此我愿意接受其他实现的建议。


简单的方法是将行数组预先计算为附加属性:

this.itemsPerRow = 2
this.rows = Array.from(
  Array(Math.ceil(this.fields.length / this.itemsPerRow)).keys()
)

然后在 HTML 中,您将使用两个带切片管道的循环:

<div *ngFor="let i of rows" class="row">
  <div *ngFor="let field of fields | slice:(i*itemsPerRow):(i+1)*itemsPerRow">
    <div class="col-3"><label>{{field.key}}</label></div>
    <div class="col-3"><input [(ngModel)]="object[field.key]"></div>
  </div>
</div>

Demo: http://plnkr.co/edit/GVVyta1mqWAKP09V7Qvw?p=preview http://plnkr.co/edit/GVVyta1mqWAKP09V7Qvw?p=preview

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 *ngFor 索引将多个迭代分组在一行中 的相关文章

随机推荐

  • jQuery UI 的对话框无法在 ASP.NET 上运行

    我有以下测试 ASPX 页面
  • Visual Studio 2019 IntelliTest 与 .NET Core、.NET Standard 的兼容性?

    我正在最新版本的 Visual Studio Enterprise 中评估 Intellitest 据我自己在各个网站上的尝试和研究来看 IntelliTest 似乎只与 NET Framework 兼容 不兼容 NET Standard
  • HBase:复制是如何工作的?

    我目前正在将 HBase 作为数据存储进行评估 但有一个问题没有得到解答 HBase 在许多节点上存储同一对象的许多副本 也称为复制 由于HBase具有所谓的强一致性 相比之下最终一致 它保证每个副本在读取时返回相同的值 据我了解 HBas
  • 如何检查公共MSMQ是否为空

    有没有办法检查公共 MSMQ 是否为空 对于私有 MSMQ 来说很简单 private bool IsQueueEmpty string path bool isQueueEmpty false var myQueue new Messag
  • TFS 2010:服务不可用 503

    我已经尝试解决这个问题大约一周了 我在微软网站上发布了这个问题 但只收到了一条回复 这并没有解决我的问题 以下是我在微软网站上的帖子的组合 我在 Window 7 PC 64 位上安装并配置了 TFS 2010 当我导航到http loca
  • python 中压缩时出现 LEN 错误

    def shufflemode import random combined zip question answer random shuffle combined question answer zip combined 但后来我收到错误
  • 为什么 IQueryables 没有 SingleOrDefaultAsync?

    以下代码无法编译 因为 SingleOrDefaultAsync 不是 GetAppointments 的合适扩展 我只是想知道为什么 public IQueryable
  • Internet Explorer 7/8 和窗口函数是空对象

    在 Internet Explorer 8 中 也适用于 IE7 8 模式下的 IE9 以下代码会发出警报object and undefined而不是预期的function和类似的东西function native code alert
  • Lambda 函数作为基类

    在使用 Lambda 时 我发现了一个我并不完全理解的有趣行为 假设我有一个struct Overload派生自 2 个模板参数 并且有一个using F1 operator clause 现在 如果我从两个函子派生 我只能访问 F1 的运
  • MySQL COUNT() 跨多列

    我已经为这个问题绞尽脑汁有一段时间了 但似乎无法让它发挥作用 我有一个表 其中除了其他标准字段外 还有一些用于同类不同值的字段 例如 INT 每个字段的值都是唯一的 gt 意思是如果它出现在val 1它不会出现在val 2 and val
  • 如何在 PHP 中获取字符串的字节值?

    假设我在 php 中有一个字符串 它打印到一个文本文件中 如下所示 n 9q1F 我如何将其字节码而不是时髦的 ascii 字符获取到我的文本文件中 使用 ord 函数 http ca php net ord http ca php net
  • 如何加速 Jekyll/Octopress 生成?

    我使用 Octopress 作为我的博客引擎 这是完美的 但如果帖子很多 比如400 个帖子 生成的速度就太慢了 那么 有什么办法可以加快 Jekyll Octopress 的生成速度呢 Thanks 显然 如果您只处理一篇文章 则无需等待
  • Android Studio 构建时间与 Gradle 依赖项与 Jar 依赖项

    我正在开发一个使用 4 个外部库的产品 所有这些库都通过外部罐子包含在内 Jar 依赖项的构建时间约为 10 分钟 我用 Gradle 依赖项更改了 Jar 依赖项 然后构建时间达到了 3 5 分钟 之前的依赖关系 10 分钟构建时间 co
  • Swift 中的元组数组

    我有一个功能 func parseJSON3 inputData NSData gt NSArray var tempDict id Int ccomments Int post date String post title String
  • WordPress 中的自定义重写规则

    我在内部 WordPress 重写规则方面遇到了麻烦 我已阅读此主题 但仍然无法得到任何结果 WordPress 插件中的 wp rewrite https stackoverflow com questions 2210826 need
  • 在 HANA 中上传数组

    我是 SAP HANA 的新手 最近将一些数据库迁移到它 发现它的性能非常好 我面临的问题是我无法上传array column在哈纳 但我发现有一种方法可以使用以下方法在 HANA 中插入数组 INSERT INTO T1 VALUES 1
  • MySQL中没有子查询字段的模式计算?

    在我的应用中 每个产品组有很多产品 每个产品有一个制造商 这些关系由 MySQL 存储在 InnoDB 表中product groups与id场 以及products with id product group and manufactur
  • 将 html 文件中的阿拉伯数字转换为阿拉伯/波斯数字

    我正在尝试将纯文本阿拉伯数字转换为东方阿拉伯数字 所以基本上采取1 2 3 并将它们转换成 该函数转换all数字 包括标签中包含的任何数字 即H1 private void LoadHtmlFile object sender EventA
  • 从给定列表中选择随机字符串

    我试图让 Java 从给定列表中选择 1 个随机字符串 字符串列表的示例 1153 3494 9509 2 0 0 0 0 1153 3487 9509 2 0 0 0 0 1153 3491 9525 2 0 0 0 0 1153 346
  • 使用 *ngFor 索引将多个迭代分组在一行中

    我一直在尝试构建一个具有多列的动态输入对话框 基本上有一个字段列表 我想为每两个字段构造一行 我的尝试看起来像这样 甚至不确定这是否可能 div div class row div div class col 3 div div div d