跳到主要内容
Tennantite
EN
文档目录

Mekanism 列表

Mekanism 滚动列表(GuiScrollList 系共享件):list 行 12 高(list/base|hovered|selected + list/slot 图标槽 + 细滚动条)、filter 行 29 高(list/filter/base|hovered + element_holder 滚动槽 + scroll/bar 把手),数据全量注入、渲染层按可见行数截断。

全屏预览预览页不进入搜索引擎索引

组成

这些是可直接组合的组件;Block 只是把它们按原版坐标放在一起。

代码

import type { MekanismListRow } from "../mekanism-list/index";
import { MekanismList } from "../mekanism-list/index";

const MODULE_ROWS: MekanismListRow[] = [
  { icon: "item/upgrade/speed", id: "speed", label: "速度升级" },
  { icon: "item/upgrade/energy", id: "energy", label: "能量升级" },
  { icon: "item/upgrade/filter", id: "filter", label: "过滤升级" },
  { id: "muffling", label: "消音升级" },
  { icon: "item/upgrade/anchor", id: "anchor", label: "锚点升级" },
  { icon: "item/upgrade/chemical", id: "chemical", label: "化学升级" },
];

const FILTER_ROWS: MekanismListRow[] = [
  { icon: "item/upgrade/filter", id: "tag", label: "标签过滤器" },
  { icon: "item/upgrade/filter", id: "item", label: "物品过滤器" },
  { icon: "item/upgrade/filter", id: "mod", label: "模组过滤器" },
  { id: "material", label: "材质过滤器" },
];

export function MekanismListDemo() {
  return (
    <div className="relative h-44 w-96">
      <MekanismList left={0} rows={MODULE_ROWS} scroll={0.2} selectedId="filter" top={0} visibleRows={4} width={120} />
      <MekanismList left={140} rows={FILTER_ROWS} top={0} variant="filter" visibleRows={3} width={170} />
    </div>
  );
}