Result — компонент интерфейса, предназначенный для отображения итогового состояния операции, страницы или процесса. Он используется в ситуациях, когда необходимо визуально сообщить пользователю о результате выполнения действия: успешном завершении операции, возникновении ошибки, отсутствии доступа, недоступности ресурса или иных состояниях системы.
Компонент объединяет несколько ключевых элементов: иконку состояния, заголовок, описание и дополнительные действия. Благодаря этому создаётся компактный и информативный блок, который быстро передаёт пользователю смысл происходящего.
Типичные сценарии применения:
Компонент входит в состав библиотеки Element Plus и доступен после её установки и подключения.
import { ElResult } from 'element-plus'
При глобальной регистрации библиотеки отдельный импорт компонента не требуется.
Использование в шаблоне:
<el-result title="Success" sub-title="The operation was completed successfully" />
Компонент Result имеет несколько логических частей:
| Часть | Назначение |
|---|---|
| icon | визуальное представление состояния |
| title | основной заголовок |
| sub-title | дополнительное описание |
| extra | область действий |
Минимальный пример:
<el-result
icon="success"
title="Success"
sub-title="Your request has been processed"
/>
Element Plus предоставляет набор стандартных иконок состояния. Они автоматически оформляются в соответствии с общепринятыми UI-паттернами.
Поддерживаемые значения свойства icon:
| Значение | Назначение |
|---|---|
| success | успешное выполнение |
| warning | предупреждение |
| info | информационное сообщение |
| error | ошибка |
Пример использования различных состояний:
<el-result icon="success" title="Success" />
<el-result icon="warning" title="Warning" />
<el-result icon="info" title="Information" />
<el-result icon="error" title="Error" />
Определяет тип отображаемой иконки.
| Тип | Значение |
|---|---|
| string | success / warning / info / error |
<el-result icon="warning" />
Основной заголовок результата.
| Тип | Значение |
|---|---|
| string | текст заголовка |
<el-result title="Payment Successful" />
Дополнительное описание результата.
| Тип | Значение |
|---|---|
| string | текст подзаголовка |
<el-result
title="Order submitted"
sub-title="Your order will be shipped within 2 days"
/>
Подзаголовок используется для более детального объяснения произошедшего события.
Позволяет полностью заменить стандартную иконку на пользовательскую.
<el-result title="Custom Icon">
<template #icon>
<el-icon>
<i class="custom-icon"></i>
</el-icon>
</template>
</el-result>
Такой подход полезен при необходимости использовать:
Слот extra предназначен для размещения элементов взаимодействия: кнопок, ссылок или навигации.
Пример:
<el-result
icon="success"
title="Successfully submitted"
sub-title="Your information has been sent"
>
<template #extra>
<el-button type="primary">Back</el-button>
</template>
</el-result>
В блоке extra чаще всего размещаются:
Компонент часто используется совместно с кнопками Element Plus.
Пример нескольких действий:
<el-result
icon="error"
title="Submission failed"
sub-title="Please check the information and try again"
>
<template #extra>
<el-button type="primary">Retry</el-button>
<el-button>Cancel</el-button>
</template>
</el-result>
В данном сценарии пользователь получает возможность:
Помимо стандартных параметров компонент поддерживает полную кастомизацию через слоты.
Пример расширенного результата:
<el-result>
<template #icon>
<img src="/images/custom-success.svg" />
</template>
<template #title>
Account Created
</template>
<template #sub-title>
Your account has been successfully registered
</template>
<template #extra>
<el-button type="primary">Go to Dashboard</el-button>
</template>
</el-result>
Такой способ позволяет полностью контролировать структуру и содержимое результата.
Один из самых распространённых случаев — отображение результата после выполнения действия.
<el-result
icon="success"
title="Payment successful"
sub-title="Transaction ID: 718923"
>
<template #extra>
<el-button type="primary">View order</el-button>
</template>
</el-result>
Используется для информирования о невозможности завершить процесс.
<el-result
icon="error"
title="Payment failed"
sub-title="Please verify your payment information"
/>
<el-result
icon="warning"
title="403"
sub-title="You do not have permission to access this page"
>
<template #extra>
<el-button type="primary">Back Home</el-button>
</template>
</el-result>
Компонент удобно применять при создании страниц ошибок маршрутизации.
<el-result
icon="info"
title="404"
sub-title="The page you visited does not exist"
>
<template #extra>
<el-button type="primary">Go Home</el-button>
</template>
</el-result>
Компонент Result часто применяется внутри страниц маршрутизатора Vue Router.
Пример страницы ошибки:
<template>
<div class="error-page">
<el-result
icon="error"
title="500"
sub-title="Internal server error"
>
<template #extra>
<el-button type="primary" @click="$router.push('/')">
Home
</el-button>
</template>
</el-result>
</div>
</template>
Result обычно размещается в центре страницы или контейнера.
Пример базовой разметки:
.result-container {
display: flex;
justify-content: center;
align-items: center;
height: 100%;
}
<div class="result-container">
<el-result
icon="success"
title="Completed"
sub-title="Operation finished"
/>
</div>
Element Plus позволяет изменять внешний вид компонента через CSS.
Пример кастомизации:
.el-result__title {
font-size: 24px;
font-weight: 600;
}
.el-result__subtitle {
color: #6b7280;
}
Можно изменять:
Компонент Result выполняет важную роль в UX-структуре приложения:
1. Сигнал завершения процесса Показывает пользователю, что действие завершилось.
2. Снижение когнитивной нагрузки Иконка и краткий текст быстро передают смысл состояния.
3. Навигация после действия Дополнительные кнопки помогают продолжить взаимодействие.
4. Унификация отображения ошибок и сообщений Позволяет централизовать дизайн сообщений состояния.
Result и Alert выполняют разные задачи.
| Компонент | Назначение |
|---|---|
| Alert | краткие уведомления внутри интерфейса |
| Result | отображение итогового состояния страницы или процесса |
Alert используется внутри формы или панели, тогда как Result чаще занимает центральную область страницы.
Использование понятных заголовков
Заголовок должен ясно описывать результат действия.
Хорошо:
Payment Successful
Order Submitted
Access Denied
Плохо:
Done
Completed
Something happened
Краткое описание
Подзаголовок должен уточнять детали результата:
Наличие действий
При ошибках или завершении операций рекомендуется добавлять действия:
Использование правильных иконок
Иконка должна соответствовать типу сообщения:
| Состояние | Иконка |
|---|---|
| успех | success |
| предупреждение | warning |
| информация | info |
| ошибка | error |
Он рассчитан на отдельный визуальный блок состояния, который обычно занимает центральную часть интерфейса.
Страница результата в приложениях часто строится по следующей структуре:
Компонент Result объединяет все эти элементы в единый интерфейсный блок и обеспечивает единообразие отображения состояния системы во всём приложении.