Skip to content

Tour 新手引导

用于引导用户了解产品功能的导览组件。支持高亮目标元素、遮罩镂空、多步骤导航、键盘操作等功能。

基础用法

通过 v-model 控制引导的显示和隐藏,steps 配置引导步骤。每个步骤通过 target 指定高亮元素(支持 CSS 选择器、HTMLElement 或函数)。

弹出位置

支持 12 个方向的弹出位置:top / top-start / top-end / bottom / bottom-start / bottom-end / left / left-start / left-end / right / right-start / right-end

可以在组件级别统一设置 placement,也可以在每个 step 中单独覆盖。

自定义指示器

通过 indicator 属性选择内置指示器类型,或通过 indicator 插槽完全自定义。

  • default:页码(如 1/3)
  • dot:圆点指示器
  • none:不显示指示器

键盘导航

开启 keyboard 属性后支持键盘操作:

  • ESC:关闭引导
  • / :下一步
  • / :上一步

自定义按钮文案

通过属性或插槽自定义按钮文案。

自定义内容

通过插槽自定义标题、描述和操作区域的渲染。

Tour API

Tour Props

参数说明类型默认值
modelValue / v-model是否显示引导booleanfalse
open / v-model:open是否显示引导(别名)booleanfalse
steps引导步骤配置TourStep[][]
current / v-model:current当前步骤索引number0
placement默认弹出位置TourPlacement'bottom'
arrow是否显示箭头booleantrue
showMask是否显示遮罩booleantrue
closeOnOverlayClick点击遮罩是否关闭booleantrue
keyboard是否启用键盘导航booleantrue
gap高亮区域内边距 (px)number6
offset面板与目标的间距 (px)number12
maskColor遮罩颜色string'rgba(0,0,0,0.5)'
zIndex层级number
indicator指示器类型'default' | 'dot' | 'none''default'
scrollIntoViewOptions滚动到目标的选项ScrollIntoViewOptions{ behavior: 'smooth', block: 'center' }
showPrevButton是否显示上一步按钮booleantrue
showSkipButton是否显示跳过按钮booleantrue
prevButtonText上一步按钮文案string'上一步'
nextButtonText下一步按钮文案string'下一步'
finishButtonText完成按钮文案string'完成'
skipButtonText跳过按钮文案string'跳过'

TourStep

参数说明类型默认值
title步骤标题string
description步骤描述string
target目标元素string | HTMLElement | (() => HTMLElement)
placement覆盖弹出位置TourPlacement
showArrow覆盖箭头显示boolean
gap覆盖高亮内边距number
offset覆盖面板间距number

TourPlacement

'top' | 'top-start' | 'top-end'
'bottom' | 'bottom-start' | 'bottom-end'
'left' | 'left-start' | 'left-end'
'right' | 'right-start' | 'right-end'

Tour Events

事件名说明回调参数
update:modelValue显隐状态变化(value: boolean)
update:open显隐状态变化(value: boolean)
update:current当前步骤变化(current: number)
change步骤切换(currentStep: number)
close引导关闭(currentStep: number)
finish引导完成(最后一步点击下一步)()

Tour Slots

插槽名说明
indicator自定义步骤指示器
title自定义标题
description自定义描述内容
actions自定义操作按钮
prev-text上一步按钮文案
next-text下一步按钮文案
finish-text完成按钮文案

Tour Methods (exposed)

方法名说明参数
open打开引导()
close关闭引导()
next下一步()
prev上一步()
goTo跳转到指定步骤(index: number)

基于 MIT 许可发布