Skip to content
方舟组件

阶段选择器Phase Tabs

精英阶段 E0 / E1 / E2 单选:属性计算器、攻击范围这类按阶段重算的数据用。

Vue
实验import { AkPhaseTabs } from "@mooncellwiki/prts-design-vue"Storybook ↗源码 ↗

精英阶段 E0 / E1 / E2 的选择器:一排贴在一起的小块,当前项黑白反转(同游戏内 btn_on)。属性计算器、攻击范围这类「同一块数据按阶段重算」的地方用;v-model 是当前阶段 0–2。

基本 ​

图标由调用方按阶段传(icons,下标 = 阶段,elite_N.png 白线稿):未选中项半透明,选中项落在反色块上时自动反相(--ak-glyph-filter-inverse,跟随系统的暗色也正确)。它和 LV 灰块、信赖是同一高度,放在一行里齐平。

低星干员 · 无图标 ​

max 是最高精英阶段:三星干员 1、一 / 二星 0,只画到这一阶(没有的阶段不画成禁用——读者不需要知道「这里本来可以有 E2」)。绑定的值超出 max 时按最高阶显示。不传 icons 只有文字。

语义:单选组,不是页签 ​

它不切换面板,只改一个值、下游数据跟着重算,所以按 WAI-ARIA Radio Group 做:外层 role="radiogroup"(label 默认「精英阶段」),每项 <button role="radio" aria-checked>。要切换几块各自独立的内容时用标签页。

键行为
Tab进入 / 离开整组(只有当前阶段在 Tab 顺序里)
→ / ↓下一阶并选中(末尾回到第一阶)
← / ↑上一阶并选中(开头回到最后一阶)
Space / Enter选中当前焦点项

Vue API ​

属性类型默认说明
max0122最高精英阶段:只画到这一阶(三星干员 1,一 / 二星 0)
iconsstring[][]各阶段图标地址,下标 = 阶段(elite/elite_N.png,白线稿;选中项在反色块上自动反相);不传只有文字
labelstring"精英阶段"读屏用的组名
modelValuenumber0当前精英阶段 0–2
事件参数说明
update:modelValue[value: number]

CSS 实现 ​

CSS 只管外观;没有 Vue 的页面(MW 模板)由页面脚本切换 .is-active。

块元素 __修饰 --

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