UtilsPassword
Данный компонент выводит поле для ввода пароля. Его основной функционал заключается в кнопке показа и скрытия пароля.
Компонент может быть использован несколькими способами:
- Можно использовать в форме с помощью
formData
. Для этого в компоненте предусмотрен пропсid
- Можно использовать через
v-model
.
WARNING
Для работы данного компонента необходимо установить модуль nuxt-icon
, так как с помощью него выводится иконка для показа/скрытия пароля.
Пропсы
autocomplete
— задает атрибутautocomplete
. Может быть полезен, когда необходимо вывести поля «Старый пароль» и «Новый пароль».id
— идентификатор поля ввода. Устанавливаетid
иname
, которые используются вformData
.По умолчанию:
password
.label
— плейсхолдер для поля. Задает параметрplaceholder
.placeholder
— плейсхолдер для поля. Задает параметрplaceholder
.disabled
— является ли поле выключенным. Задает параметрdisabled
.minlength
— определяет минимальную длину инпута. Задает параметрminlength
.По умолчанию:
4
.maxlength
— определяет максимальную длину инпута. Задает параметрmaxlength
.required
— является ли поле обязательным для заполнения. Выставляет атрибутrequired
.По умолчанию:
true
.
Стилизация
Для стилизации компонента подготовлены классы:
utils-input-container
. Его стилизация влияет на контейнер, в котором находится текстовое поле.utils-input-label
. Его стилизация влияет наlabel
.utils-input-input
. Его стилизация влияет наinput
.utils-password-icon
. Его стилизация влияет на иконку показа/скрытия пароля.
При этом label
и input
можно стилизовать просто используя их селекторы.
INFO
Также для стилизации можно использовать глобальные классы, которые стилизуют все компоненты формы.
utils-form-container
. Его стилизация влияет на контейнер, в котором находится текстовое поле.utils-form-label
. Его стилизация влияет наlabel
.utils-form-input
. Его стилизация влияет на поле ввода.
Использование
<script setup lang="ts">
const text = ref("")
</script>
<template>
<UtilsPassword
v-model="text"
id="test-field"
placeholder="Тестовый плейсхолдер"
/>
</template>