Угловой валидатор для проверки массива

У меня есть ввод с множественным выбором. Я хочу подтвердить, что что-то выбрано. В обычном случае я использую

Validators.required (builder: [[], Validators.required])

но что касается документации, этот метод работает так:

this._required = value != null && value !== false && `${value}` !== 'false';

ссылка, так что это всегда возвращает что это поле заполнено, потому что у меня есть массив.

У вас есть идея, как это проверить с помощью Validators.pattern или сделать это другим способом? Это мой html-файл:

<ng-template [ngSwitchCase]="'multiselect'">
<div class="selector-holder overflowable" [ngStyle]="{'z-index': 50 - zIndex}" [ngClass]="{'has-errors': hasErrors(editForm.get(i).get(element)), 'disabled': editForm.get(i).get(element).disabled}">
        <ng-select [allowClear]="false" [multiple]="true"
                [disabled]="editForm.get(i).get(element).disabled"
                    [items]="formDefinition[i].fields[element].options"
                    [active]="getMultiValues(editForm.get(i).get(element))"
                    (selected)="setSelected(editForm.get(i).get(element), $event)"
                    (removed)="setRemoved(editForm.get(i).get(element), $event)"
                    placeholder="{{'select' | translate}}">
            </ng-select>
            <app-form-field-error [control]="editForm.get(i).get(element)"></app-form-field-error>
    </div>

And this is my ts file:

type type: 'multiselect',
                builder: [[], Validators.required],
                options: [
                    {
                        id: 1,
                        text: _('Text 1')
                    },
                    {
                        id: 2,
                        text: _('Text 2')
                    },
                    {
                        id: 3,
                        text: _('Text 3')
                    },

И в этом случае, когда ничего не выбрано, у меня нет ошибки, но я хочу, чтобы она была.


person David J.    schedule 10.05.2018    source источник
comment
Я с трудом верю, что валидатор виноват.   -  person Antoniossss    schedule 10.05.2018
comment
Как вы получаете массив в поле формы?   -  person random_user_name    schedule 10.05.2018
comment
@cale_b Я добавляю свои файлы html и ts. Пожалуйста, проверьте сейчас   -  person David J.    schedule 10.05.2018
comment
Вы видели этот пост? Это решает вашу проблему? stackoverflow.com/a/43080543/870729   -  person random_user_name    schedule 10.05.2018
comment
@cale_b Я видел, но это не работает. Такая же ситуация, когда я пробовал это: [''], Validators.compose([Validators.required, Validators.pattern('.+')]) и возможности этого, и это не работает.   -  person David J.    schedule 11.05.2018