Skip to content

Prompts 提示集组件 🎁

介绍

Prompts 用于显示一组与当前上下文相关的预定义的问题或建议。

代码演示

基本使用

快速创建一组提示集列表。默认超出不会换行,且隐藏滚动条。

禁用状态

通过 disabled 属性快速禁用提示集组件,点击事件将会失效。注意是控制单个提示集上,才生效。

垂直排列

使用 vertical 属性,控制 Prompts 展示方向。注意这个是作用在整个 Prompts 组件上,而不是单个 PromptsItem 上。

可换行

使用 wrap 属性,控制 Prompts 超出区域长度时是否可以换行。

响应式宽度

配合 wrapstyles 固定宽度展示。 注意是作用在 PromptsItem 上结合使用才会生效。单独作用方便更定制化。

定制化样式

通过 style 属性来定制化提示集的样式。

通过 itemStyleitemHoverStyle 还有 itemActiveStyle 属性来定制化单个提示集的样式。

嵌套组合

快速创建一组提示集列表。默认超出不会换行,且隐藏滚动条。

属性

属性名类型是否必填默认值描述
titlestring''提示集的主标题文本内容
itemsPromptsItemsProps[][]提示项数组,每个元素包含标签、图标、描述等信息(具体结构见下方说明)
wrapbooleanfalse是否允许提示项自动换行(仅水平排列时生效)
verticalbooleanfalse是否垂直排列提示项(垂直模式下布局方向为列排列)
styleCSSProperties{}组件容器的自定义样式(直接作用于最外层div.el-prompts

PromptsItemsProps 结构说明(单个提示项属性):

typescript
interface PromptsItemsProps {
  key: string | number // 唯一标识(用于状态关联)
  label?: string // 提示项标签文本
  icon?: ComponentVNode // 提示项图标(Vue组件形式)
  description?: string // 提示项描述文本
  disabled?: boolean // 是否禁用(禁用时不响应交互)
  itemStyle?: CSSProperties // 提示项自定义基础样式
  itemHoverStyle?: CSSProperties // 提示项悬停状态自定义样式
  itemActiveStyle?: CSSProperties // 提示项激活状态自定义样式
  children?: PromptsItemsProps[] // 子提示项数组(用于嵌套展示)
}

插槽

插槽名参数类型描述
#title-Slot自定义提示集标题内容(若同时设置title属性,插槽内容会覆盖属性文本)
#icon{ item: PromptsItemsProps }Slot自定义提示项的图标内容(接收当前提示项item参数,可覆盖item.icon
#label{ item: PromptsItemsProps }Slot自定义提示项的标签内容(接收当前提示项item参数,可覆盖item.label
#description{ item: PromptsItemsProps }Slot自定义提示项的描述内容(接收当前提示项item参数,可覆盖item.description

功能特性

  1. 多维度内容展示:支持通过items属性配置标签、图标、描述等基础信息,同时提供label/icon/description插槽实现内容高度自定义。
  2. 灵活布局控制:通过vertical属性切换垂直/水平排列模式,wrap属性控制水平排列时的自动换行能力,适配不同场景布局需求。
  3. 交互状态反馈:内置悬停(背景色变浅)和激活(背景色加深)状态样式,支持通过itemHoverStyle/itemActiveStyle自定义状态样式,提升交互体验。
  4. 禁用状态支持:单个提示项可通过item.disabled属性禁用,禁用状态下不响应点击事件且背景色变灰,明确提示不可操作。
  5. 嵌套层级展示:支持通过item.children配置子提示项,组件自动递归渲染嵌套结构,满足多级分类或关联提示的展示需求。 6.细粒度样式定制:支持通过style属性控制组件整体样式,通过itemStyle控制单个提示项基础样式,支持状态样式单独配置(itemHoverStyle/itemActiveStyle)。