Проверка массива формы Angular5 для динамически создаваемых полей
Я использую angular5 в том смысле, что я использую массив форм для динамического создания полей. Изначально я хочу загрузить массив формы в виде 0 файлов. Если я нажимаю кнопку "плюс", я хочу добавить два поля. С проверкой.
Если из массива пусто, т.е. теперь поля созданы, я должен отправить кнопку без этих динамических полей.
Если поля созданы, я должен установить валидацию без ввода информации в поля, я не активирую кнопку отправки.
Если я устанавливаю validators.required в массиве формы, я не могу отправить без ввода в первые два поля
Мне нужно решение для этого, ребята.
1 ответ
Предполагая, что вы используете подход, основанный на шаблонах, место, где вы просматриваете свои данные для создания динамических элементов управления, создайте индексную переменную, например
*ngFor=" val in collection; let i=index"
а затем используйте это, чтобы сделать каждый элемент управления уникальным, добавив к имени элемента управления, например
<input type="text" name="txtId-{{i}} #txtId="ngModel" [(ngModel)]="someId" />
Теперь, если вы попытаетесь использовать txtId.valid внутри цикла, он будет уникальным для каждой строки.