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

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

patchValueForm(portfolio: any) {
 this.property_ids.patchValue(portfolio.property_ids);
 this.portfolio_name.patchValue(portfolio.portfolio_name);
 this.portfolio_id.patchValue(portfolio.portfolio_id);
 console.log(this.formGroup.getRawValue());

}

И HTML-код, вызывающий эту функцию:

          <mat-select >
            <mat-option *ngFor="let portfolio of portfolios"
                        [value]="portfolio.portfolio_name"
                        (onSelectionChange)="patchValueForm(portfolio); showFields = true"
            >
              {{portfolio?.portfolio_name}}
            </mat-option>
          </mat-select>

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

enter image description here

Первый журнал - после первого задания значения formValue, а затем следующие два - после второговыбор. Я не могу понять, почему он устанавливает значение, а затем мгновенно сбрасывает его к оригиналу. Это нормальное поведение?

Когда я затем фактически выбираю исходное значение formValue, оно обновляет его до ранее выбранного значения:

enter image description here

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