Почему Angular FormControl держит значение флажка после снятия флажка? - PullRequest
0 голосов
/ 27 апреля 2018

Я динамически визуализирую реактивную форму, используя код, подобный динамическим формам пример , который предоставляет angular, но пытаюсь установить флажок. Когда значение флажка оставлено пустым и форма отправлена, значение элемента управления cb равно нулю, что вполне нормально:

Initial blank cb

Если я затем проверю это, значение становится тем, с чем оно связано в шаблоне, в данном случае статическим / жестко закодированным "true":

cb checked

Пока все хорошо, но если я сниму флажок и повторно отправлю, он все равно имеет значение "true" - что? (да, я несколько раз нажимал кнопку отправки после снятия флажка)

cb holds value when unchecked

Вот шаблон, в котором отображается форма:

<div [formGroup]="form">
<label [attr.for]="question.key">{{question.label}}</label>

<div [ngSwitch]="question.kind">

  <input *ngSwitchCase="'textbox'" 
    [formControlName]="question.key"
    [id]="question.key" 
    [type]="question.kind">

  <input *ngSwitchCase="'checkbox'"
    [formControlName]="question.key"
    [id]="question.key"
    [type]="question.kind"
    [value]="true">
</div> 

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