В Naive UI каждый компонент обладает набором props, позволяющих гибко настраивать его поведение, внешний вид и взаимодействие с пользователем. Props — это параметры, передаваемые компоненту при его использовании, которые определяют его состояние, функции и стиль. Разберём наиболее важные аспекты и общие правила работы с props в Naive UI.
Типизация Все props в Naive UI строго
типизированы. Например, для компонента NButton prop
type принимает только определённые строковые значения:
'primary', 'secondary',
'success', 'error', 'warning' и
'info'. Использование неподдерживаемого значения приведёт к
ошибке или игнорированию.
Обязательные и необязательные props Некоторые
props обязательны для корректного функционирования компонента, другие
имеют значения по умолчанию. Например, для NInput проп
value можно не указывать, если используется
v-model, так как связь со значением будет организована
автоматически.
Объекты и функции как props Многие компоненты
принимают функции для событий (onClick,
onChange) и объекты для конфигураций (options,
rules). Это позволяет создавать динамическое поведение и
валидацию без вмешательства в внутреннюю реализацию компонента.
NButtonprimary, secondary, success,
error, warning, info).small,
medium, large).NInputtext,
password, textarea и др.).NCheckboxNSelect{ label, value }.NDataTabletitle, key,
render).Некоторые props в Naive UI могут принимать функции или вычисляемые значения, что позволяет компоненты адаптировать под динамические данные:
<NButton :disabled="isDisabled" @click="handleClick">
Нажми меня
</NButton>
Здесь isDisabled может быть реактивным состоянием,
меняющимся в зависимости от других действий пользователя.
Naive UI позволяет задавать глобальные props для группы компонентов
через провайдер ConfigProvider. Например, можно определить
глобальные размеры всех кнопок и полей ввода, не указывая их отдельно
для каждого компонента:
<ConfigProvider :component-props="{ NButton: { size: 'large' }, NInput: { clearable: true } }">
<App />
</ConfigProvider>
Это упрощает масштабное приложение, где стандартизированы стили и поведение элементов интерфейса.
ref или computed, автоматически
обновляют компонент.v-model для основных значений, props для конфигурации.Если углубляться, каждая категория компонентов имеет свой специфический набор props, но все они подчиняются общим правилам: типизация, обязательность, реактивность и возможность передачи функций для обработки событий. Это создаёт единый и предсказуемый подход к построению интерфейсов на Naive UI.