Как проверить длину вводимого текста при вводе материала? - PullRequest
1 голос
/ 10 апреля 2019

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

У меня есть многострочный текстовый ввод, для которого я использую материал ввода и введите = "текст".

Я сделал это поле "обязательным", но проблема в том, когда пользователь вводит пробел иливведите, "требуется" ушел.Мне нужен атрибут, в котором я могу указать ограничение, по которому должен быть введен хотя бы один символ, не являющийся пробелами.

Как этого добиться?

Вот мой код, в котором я использовал материал ввода:

<material-input
    ngControl="textAnswer" [(ngModel)]="answer" multiline
    type="text" label="Your answer" required>
</material-input>

1 Ответ

1 голос
/ 10 апреля 2019

Согласно документации вы можете использовать все атрибуты input элементов с ним.

Все атрибуты, которые можно использовать с обычными элементами <input> и <textarea>, можно использовать и с элементами внутри <mat-form-field>

Поэтому используйте атрибут HTML5 pattern для сопоставления с пользовательским шаблоном (регулярным выражением).

<material-input
    ngControl="textAnswer" [(ngModel)]="answer" multiline
    pattern="[\s\S]*\S[\s\S]*"
    type="text" label="Your answer" required>
</material-input>

[\s\S]*\S[\s\S]* поможет сопоставить строку с хотя бы одним непробельным символом.

ПРИМЕЧАНИЕ. Чтобы включить все другие символы, используйте [\S\s], поскольку . не включает символ новой строки.

...