> For the complete documentation index, see [llms.txt](https://prostokosaka.gitbook.io/bubble/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://prostokosaka.gitbook.io/bubble/56-polzovatelskie-sostoyaniya-elementov.md).

# 5.6 Пользовательские состояния элементов

К элементам можно прикрепить какие-то данные. Это осуществляется через "Пользовательские состояния"/"Custom States". Хоть эта функция и не для новичков, она очень полезна, если вам нужно хранить какую-то информацию.

## Варианты использования

Пользовательские состояния очень полезны, когда вам нужно хранить на странице какие-то данные и не сохранять их навсегда в базе данных. Такой функционал нужен обычно в двух случаях:

1. Хранить текущее состояние на странице. Например, на вашей странице есть две вкладки: "обзор" и "редактирование", и пользователи могут переключаться между обоими режимами. Хранение на странице текущего режима будет полезно для управления тем, какой элемент показывать, а какой скрывать на основе условий. Когда пользователь обновляет страницу, последний режим сбросится.
2. Хранение временных данных для процессов. Если вам нужно производить вычисления и хранить промежуточные результаты, использование пользовательских состояний может быть полезно для хранения результата и использования его в последующих действиях.

## Использование пользовательских состояний

### Задание пользовательского состояния

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

Есть два способа задания пользовательского состояния. Вы можете либо использовать действие "Установить пользовательское состояние"/"Set custom state" (см ниже) и кликнуть по последней опции в выпадающем меню после выбора элемента, либо использовать "Инспектор элемента"/"Element Inspector". Он показывает существующие состояния и позволяет изменить имя и тип. Также в нем можно создать новые состояния.

![](https://manual.bubble.is/assets/Desktop%202017-03-14%20at%201.46.02%20PM.png)

Аналогично полям, у пользовательских состояний должен быть тип. Это позволит Редактору Bubble отображать подходящие варианты при использовании значений состояния элемента. Так, в примере выше, состояние Адрес - это географический адрес и такая настройка позволит использовать эту информацию на карте.

### Установка пользовательского состояния

Действие "Установить пользовательское состояние"/"Set Custom State" позволяет хранить значение в состоянии элемента. Для этого вам сперва нужно выбрать элемент и затем выбрать состояние, которое нужно изменить. Как и все, что касается данных в Bubble, данные, которые вы храните в состоянии должны быть совместимы с типом данных состояния. В противном случае Инспектор ошибок выдаст сообщение о несоответствии.

![](https://manual.bubble.is/assets/Desktop%202017-03-14%20at%201.47.22%20PM.png)
