КРЕАТИВНЫЕ САЙТЫ И ПРИЛОЖЕНИЯ,
КАЧЕСТВЕННЫЕ WEB-УСЛУГИ
phone

SwInput

Компонент SwInput представляет собой
поле ввода с возможностью настройки
внешнего вида и поведения.

SwInput

Компонент SwInput представляет собой поле ввода с возможностью настройки внешнего вида и поведения.

Свойства / Properties

ИмяТипПо умолчаниюЗначения/Описание
nameStringrequiredОбязателен! нужен для связывания через id input и label.
classStringsw-inputДобавляет пользовательский CSS-класс к компоненту.
sizeString``Размер поля: 'large', 'small'.
typeStringtext'text', 'phone' (маска), 'password' (кнопка показать/скрыть), 'textarea', и др. HTML-типы
inputModeStringtextМобильная клавиатура: 'text', 'search', 'numeric', 'decimal', 'tel', 'url', 'email'
beforeString``Иконка в начале: имя из спрайта или URL. См. SwIcon.
afterString``Иконка в конце: имя из спрайта или URL. См. SwIcon.
placeholderString``Текст Placeholder.
requiredBooleanfalseПризнак обязательно ли для заполнения.
labelString``Текст в Label.
maxlengthNumber128Параметр атрибута max-length.
minlengthNumber1Параметр атрибута min-length.
inputSizeNumber60Параметр атрибута size — ширина текстового поля.
clearableBooleanfalseКнопка очистки значения.
rowsNumber3Строки для type="textarea".

Слоты / Slots

#prefix - вставка при отсутствии before не обязательно. #suffix - вставка при отсутствии after не обязательно.

Модель / Model

model - значение поля ввода

События / Events

prefix - клик иконке before suffix - клик иконке after focusInput - focus на поле ввода clear - очистка через clearable

Пример использования / Example Usage

<script setup>
import { ref } from 'vue'
const inputSmall = ref('')
const inputPassword = ref('')
const inputTextarea = ref('')
const phone = 'https://cdn.jsdelivr.net/npm/@tabler/icons@3.19.0/icons/outline/phone.svg'
</script>

<sw-input v-model="inputSmall" name="input-small" size="small" :before="phone" label="Small" clearable />
<sw-input v-model="inputPassword" name="input-password" type="password" label="Password" clearable />
<sw-input v-model="inputTextarea" name="input-textarea" type="textarea" label="Комментарий" :rows="4" clearable />