Skip to content
通用组件

标签页Tabs

同一位置切换几组平级内容。下划线 / 胶囊 / 游戏内块状 / 竖排四种外观。

Vue
实验import { AkTabs, AkTabPane, AkTab } from "@mooncellwiki/prts-design-vue"Storybook ↗源码 ↗

同一位置切换几组平级内容。正文里编辑写的 <tabber>(TabberNeue)由皮肤单独换肤(见 MediaWiki 内容样式 · TabberNeue),这里是模板 / 小部件用的版本。

变体 ​

下划线(默认,选中项青色下划线 + 左上角标)· 胶囊底 · 游戏内块状(选中项黑白反转)。

写法同 Naive UI 的 n-tabs:AkTabs 里放若干 AkTabPane(页签 + 面板,name 是 v-model 的值,tab 是页签文字);只要一排页签当筛选、内容在别处时,改放 AkTab。

竖排 ​

placement="left":干员档案那种,页签竖排在左、面板在右,上下方向键切换。页签要第二行小字(解锁条件)时用 AkTabPane 的 #tab 插槽,小字放 <small>。

面板默认只渲染当前页(display-directive="if",同 Naive);show 全部渲染、非当前页 hidden;show:lazy 第一次切到时才渲染,之后保留——档案、语音这类切来切去的长内容用它。

键盘 ​

键行为
← / →(竖排为 ↑ / ↓)移到上一个 / 下一个页签并选中
Home / End第一个 / 最后一个
Tab从页签组进入当前面板

只有当前页签在 Tab 顺序里(roving tabindex),符合 WAI-ARIA Tabs 的自动激活模式。

Vue API ​

AkTabs ​

属性类型默认说明
variant"underline""pill""block""underline"外观:underline 下划线(默认)· pill 胶囊底 · block 游戏内块状(选中黑白反转)
placement"top""left""top"页签位置:top 在上(默认)· left 竖排在左、面板在右(干员档案),上下方向键切换
labelstring—读屏用的页签组名
modelValueName—当前页签的 name;不绑定时默认第一个
事件参数说明
update:modelValue[value: Name | undefined]
插槽说明
defaultAkTabPane(页签 + 面板)或 AkTab(只有页签)若干

AkTabPane ​

属性类型默认说明
name必填string | number—标识,= AkTabs 的 v-model 值
tabstring—页签文字;要第二行小字(「信赖 25%」)或图标时改用 #tab 插槽
disabledbooleanfalse禁用:页签不可选,方向键跳过
displayDirective"if""show""show:lazy"—面板渲染方式(同 Naive):if 只渲染当前页(默认)· show 全部渲染、非当前页 hidden · show:lazy 第一次切到时渲染,之后保留
插槽说明
default面板内容
tab页签内容(代替 tab)

AkTab ​

属性类型默认说明
name必填string | number—标识,= AkTabs 的 v-model 值
tabstring—页签文字(也可以写在默认插槽里)
disabledbooleanfalse禁用:页签不可选,方向键跳过
插槽说明
default页签内容(代替 tab)

CSS 实现 ​

CSS 实现只负责外观;切换由皮肤脚本(data-tabs 分组)或 Vue 组件负责。

块元素 __修饰 --

文本 CC BY-NC-SA 4.0 · 游戏素材版权归鹰角网络所有