Я хочу, чтобы автоматически проверил некоторые флажки на флажок на один флажок - PullRequest
0 голосов
/ 03 июля 2019

У меня есть группа флажков, из которых некоторые являются зависимой комбинацией. Если я отмечаю один вариант, один или два других варианта получают автоматическую проверку, и наоборот, если не отмечен.

 this.addUserForm = this.formBuilder.group({
      loginId: ['', [Validators.required, Validators.minLength(4),Validators.maxLength(20)]],
      name: ['', [Validators.required, Validators.minLength(2),Validators.maxLength(20)]],
      email:  ['',[Validators.required,Validators.pattern('[a-zA-Z0-9.-]{1,}@[a-zA-Z.-]{2,}[.]{1}[a-zA-Z]{2,}')]],
      mobile: ['', [Validators.required, Validators.pattern("[0-9]+"), Validators.minLength(10),Validators.maxLength(10)]],
      groupId:['',Validators.required],
      is2FAEnabled: [false,[Validators.required]],
      AccessRights: ['',[Validators.required]]
    });
  }


  onNgModelChange(evt) {

  onSelect(value){
      console.log("value",value)
      if(value == 2){
                console.log("evt2")
                this.addUserForm.get('AccessRights').setValue(1);
      }
  }

Невозможно достичь этого, так как ошибка ОШИБКА TypeError: values.forEach не является функцией

1 Ответ

0 голосов
/ 03 июля 2019

Возьмем идею из этого примера

component.html

<mat-selection-list #access (selectionChange)="onSelection($event, access.selectedOptions.selected)" >
  <mat-list-option *ngFor="let access of typesOfAccess" [value]='access' [selected]="access.checked">
    {{access.name}} 
  </mat-list-option>
</mat-selection-list>

Component.ts

 typesOfAccess = [{"name":"credit","checked":false},{"name":"sales","checked":true},{"name":"ops","checked":false},{"name":"bst","checked":false}];

  onSelection(e, v) { 
    this.typesOfAccess[3].checked = !this.typesOfAccess[3].checked;
    console.error(this.typesOfAccess[3].checked);
  }

Поиграйте с этим

ДЕМО / ПРИМЕР

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...