Интерактивность и цели действий
У каждого интерактивного слоя должны быть понятны две вещи: что запускает действие и куда приводит результат.
Визуальный экскурс показывает, зачем эти решения нужны команде.
Ссылки используют href
Заголовок раздела «Ссылки используют href»Используйте [href] для перехода, якоря, почты, телефона или другого адреса:
catalog-link [href=/catalog]faq-link [href=#faq]email-link [href=mailto:sales@example.com]Используйте [link], только если адрес осознанно пока неизвестен. Не заменяйте неизвестную ссылку значением [href=#].
Элементы управления используют action
Заголовок раздела «Элементы управления используют action»Используйте [action], когда меняется текущий интерфейс:
filter-button [action=state:filters-open]contact-button [action=modal:contact-modal]Здесь contact-modal — идентификатор цели: у слоя назначения должен быть [modal=contact-modal]. Известная цель должна существовать в заявленной области; нерешённый вопрос записывается с ответственным. Пока само действие неизвестно, используйте [control], а не выдуманную цель. Один общий компонент кнопки может выполнять разные действия в разных местах страницы.
Поля используют field
Заголовок раздела «Поля используют field»Дайте полю стабильное имя данных и покажите нужные состояния:
email-field [field=email] [name=email]Компонент может дать визуальный шаблон, но страница должна показать связь поля с подписью, формой, ошибкой и отправкой.
Опишите важный результат
Заголовок раздела «Опишите важный результат»Для значимого действия покажите или запишите:
- начальное состояние;
- событие и цель;
- загрузку, успех, пустой результат и ошибку, если они возможны;
- фокус, сообщение и историю, если они влияют на пользователя.
Теги должны оставаться короткими. Подробный граф состояний храните в структурированном контракте; руководство по реакциям объясняет, как описать события, исходы и переходы.
Проверьте перед передачей
Заголовок раздела «Проверьте перед передачей»Пройдите от слоя действия до цели. Если найти цель можно только через автора, интерактивность ещё не готова.