Html 如何在angular 2中的ngmodel上使用2d阵列?

Html 如何在angular 2中的ngmodel上使用2d阵列?,html,angular,multidimensional-array,angular2-ngmodel,Html,Angular,Multidimensional Array,Angular2 Ngmodel,想知道如何在ngmodel中设置2d数组作为动态复选框吗 我有一个超级管理员的角色和权限设置表单,带有多个复选框。 如何区分模型名与角色id和权限id。我需要在数组中传递角色id和权限id以及模型名 例如:[(ngModel)]=“权限[role.id][per.id]” 有没有办法在表单中为ngmodel指定2d值 期待最早的答复 提前谢谢 AsngModel是获得双向绑定系统的指导 您可以轻松地执行以下语法: [(ngModel)]="permission[role.id][per.id]"

想知道如何在ngmodel中设置2d数组作为动态复选框吗

我有一个超级管理员的角色和权限设置表单,带有多个复选框。 如何区分模型名与角色id和权限id。我需要在数组中传递角色id和权限id以及模型名

例如:[(ngModel)]=“权限[role.id][per.id]”

有没有办法在表单中为ngmodel指定2d值

期待最早的答复


提前谢谢

AsngModel是获得双向绑定系统的指导

您可以轻松地执行以下语法:

[(ngModel)]="permission[role.id][per.id]"
其中permission是一个空数组,最初定义为:

permission = []

其中,权限变量将是多维数组

在这之后,如果你尝试下一个模型

[(ngModel)]="permission[role.id][per.id]"
这将导致未定义的问题,因为ngModel不仅从输入中获取值,还必须显示双向绑定的工作方式

为了避免由于未定义而在呈现时出现问题,我们必须首先将虚拟数据分配给权限数组

this.permission = new Array(this.numberOfRoles).fill(0);
    for (let j = 0; j < this.numberOfRoles; j++) {
      this.permission[j] = new Array(this.numberOfPermission).fill(0);
    }
this.permission=新数组(this.numberOfRoles).fill(0);
for(设j=0;j
这解决了如下未定义的问题


您已经试过了吗?是的,但不起作用。
this.permission = new Array(this.numberOfRoles).fill(0);
    for (let j = 0; j < this.numberOfRoles; j++) {
      this.permission[j] = new Array(this.numberOfPermission).fill(0);
    }