2017-01-11 15 views
2

ダイナミックチェックボックスのngmodelに2d配列を設定する方法を知りたいですか?角度2のngmodelで2dアレイを使用するにはどうすればよいですか?

複数のチェックボックスを持つスーパー管理者の役割と権限の設定フォームがあります。 enter image description here ロールIDとアクセス権IDでモデル名を区別する方法。私は配列内のモデル名でロールIDと許可IDを渡す必要があります。

例:[(ngModel)] = "許可[role.id] [per.id]"

フォームにngmodelのための2D値を割り当てる方法はありますか?

最も早い応答を楽しみにしています。

ありがとうございます。

+0

次のように未定義の問題を解決し、あなたはすでにそれを試してみましたか? – rinukkusu

+0

はい、動作しません。 – Aravind

答えて

1

ngModelは、2方向結合系を得るための指令である。

あなたは簡単な構文を行うことができます。

許可のように最初に定義空の配列である
[(ngModel)]="permission[role.id][per.id]" 

permission = [] 

または

permission = [[]] 

あなた許可変数の意志多次元配列である。この後

、あなたがngModel

[(ngModel)]="permission[role.id][per.id]" 

しようとした場合、それはngModelとして未定義問題は、それはそれは2ウェイバインディング作品がどのようにあるにも示すことがある入力から値を取得するだけでなく、発生します。

未定義のためにレンダリング中に問題が発生しないようにするには、最初にpermission配列にダミーデータを割り当てる必要があります。

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); 
    } 

これは、このような

enter image description here

関連する問題