Skip to content
方舟组件

模组Module

一张卡装完一个模组:型号 + 名称 + 故事(全文阅读)+ 三阶段表 + 解锁任务 + 解锁需求与材料。

Vue
实验import { AkModule, AkModuleStage, AkModuleUnlock } from "@mooncellwiki/prts-design-vue"Storybook ↗源码 ↗

同现网 {{模组}}(.equiptemplate),一张卡装完:型号(类型图标 + SWO-X)+ 名称 + 说明 tooltip + 基础信息(故事)+ 三阶段属性 / 特性追加 · 天赋更新 + 解锁任务 + 解锁需求与材料。color(= 模板参数「类型颜色」,游戏模组类型底色)决定型号块与阶段条的颜色:red / blue / green / yellow / purple,原型证章不写 = 灰。

写法参考 Naive UI 的 n-card(#header-extra):头部走 props,故事是默认插槽;三张表的行放在具名插槽里——#stages 放 AkModuleStage、#unlock 放 AkModuleUnlock,表头由卡片画。解锁任务是纯文本时用 tasks,要链接关卡号时用 #tasks 插槽写 <li>。

完整卡片 ​

AkModuleStage 的 stats 按写的顺序排、数值绿字,kicker 是反色小标(特性追加 / 天赋更新),描述写在默认插槽里;AkModuleUnlock 的 #requirement 放信赖 / 精英阶段 / 任务标签,默认插槽放材料(道具)。

故事折叠 ​

故事默认定高 5 行、框内可滚动(同现网 :不展开也读得到全文),「全文阅读」去掉定高撑开、「收起全文」收回。展开态是组件自己的状态,也可以用 v-model 接出来(外面放「全部展开」之类的开关)。无论展开与否,全文都在 DOM 里,可被搜索。

CSS 版的开关靠 data-toggle-class 约定:勾选「全文阅读」时皮肤脚本(skin.js,预览里是 preview.js)给 data-toggle-target=".ak-module__main" 切 .is-open;无 JS 时复选框照样在,只是故事停在定高框里(仍可滚动)。Vue 版自带状态。

原型证章 ​

:collapsible="false":短文全文展开、不出开关;不写 color(灰条);#header-extra 放说明标签。

键盘与可访问性 ​

  • 「全文阅读」是 <label> 包着的原生复选框(aria-controls 指向故事),Tab 聚焦、Space 切换。复选框本身是 0×0 的隐形控件,焦点环画在整个开关上。
  • 「说明 ⓘ」可聚焦,聚焦时显示解释(同悬停)。
  • 阶段条是装饰(aria-hidden),读屏只读「STAGE n」。

Vue API ​

AkModule ​

属性类型默认说明
name必填string—模组名(h4)
srcstring—模组图地址(游戏 uniequip 图;原型证章放分支图标)
typeNamestring—型号文字:SWO-X / Original …
typeIconstring—型号图标地址(游戏模组类型小图标,放在型号文字前)
color"yellow""red""blue""green""purple"—型号色(= 模板参数「类型颜色」,游戏模组类型底色):左侧粗色条 + 型号块 + 阶段条;不写 = 原型证章的灰
hintstring—「说明 ⓘ」的悬停解释(调整效果先于潜能生效 …);不写不显示
collapsiblebooleantrue故事可折叠:默认定高 5 行可滚动 +「全文阅读」开关;false 时全文展开、不出开关(原型证章那种短文)
tasksstring[]—模组解锁任务(纯文本,一条一行);要链接关卡时改用 #tasks 插槽
modelValuebooleanfalse故事是否展开(「全文阅读」/「收起全文」)
事件参数说明
update:modelValue[value: boolean]
插槽说明
default故事(基础信息):若干 <p>,行内换行用 <br>
header-extra名称之后的附加内容(原型证章的说明标签等)
stages三阶段表的行:若干 AkModuleStage
tasks解锁任务:若干 <li>(排在 tasks 之后)
unlock解锁需求与材料表的行:若干 AkModuleUnlock

AkModuleStage ​

属性类型默认说明
stage必填123—阶段 1–3:「STAGE n」+ 三段条点亮 n 段
statsRecord<string, string | number>—属性加成:{ 攻击: "+50", 攻击速度: "+5" }(按写的顺序排,数值绿字)
kickerstring—变化类别的反色小标:特性追加 / 天赋更新
插槽说明
default特性 / 天赋变化的描述(可带富文本)

AkModuleUnlock ​

属性类型默认说明
stage必填123—阶段 1–3:「STAGE n」+ 三段条点亮 n 段
插槽说明
default材料消耗:一排 AkItem(AkItemList)
requirement解锁需求:信赖 / 精英阶段与等级 / 任务标签,横排换行

CSS 实现 ​

块元素 __修饰 --

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