想知道如何在 ngmodel 中为动态复选框设置二维数组吗?
我有一个带有多个复选框的 super 管理员的 Angular 色和权限设置表单。 如何区分模型名称与 Angular 色 ID 和权限 ID。我需要通过数组中的模型名称传递 Angular 色 ID 和权限 ID。
例如:[(ngModel)]="permission[role.id][per.id]"
有没有办法在 Form 中为 ngmodel 分配 2d 值?
期待尽早回复。
提前致谢。
最佳答案
因为 ngModel 是获得双向绑定(bind)系统的指令。
您可以轻松地执行以下语法:
[(ngModel)]="permission[role.id][per.id]"
其中 permission 是一个空数组,最初定义为:
permission = []
或
permission = [[]]
您的 permission 变量将是一个多维数组。
在此之后,如果您尝试 ngModel
[(ngModel)]="permission[role.id][per.id]"
它会导致未定义问题,因为 ngModel 不仅从输入中获取值,它还必须显示双向绑定(bind)的工作原理。
为避免因未定义而导致渲染时出现问题,我们必须最初仅将虚拟数据分配给权限数组。
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);
}
这解决了如下未定义的问题
关于html - 如何在 Angular 2 的 ngmodel 上使用二维数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41585657/