mirror of
https://github.com/unanmed/HumanBreak.git
synced 2025-10-20 13:02:58 +08:00
2.4 KiB
2.4 KiB
FloorSelector 楼层选择器组件 API 文档
本文档由 DeepSeek R1
模型生成并微调。
组件描述
楼层选择器组件用于在地图浏览或地图选择场景中切换不同楼层,其尺寸与内置状态栏组件匹配,适合在地图浏览时将状态栏替换为此组件。
Props 属性说明
属性名 | 类型 | 默认值 | 描述 |
---|---|---|---|
floors |
FloorIds[] |
必填 | 可选择的楼层 ID 数组 |
now |
number |
- | 当前选中的楼层索引 |
Events 事件说明
事件名 | 参数类型 | 触发时机 |
---|---|---|
close |
- | 点击关闭按钮时触发 |
update |
(floor: number, floorId: FloorIds) |
当选中的楼层改变时触发 |
update:now |
(value: number) |
v-model 双向绑定事件 |
Slots 插槽说明
无插槽
Exposed Methods 暴露方法
无暴露方法
使用示例
基础用法 - 地图浏览界面
import { defineComponent, ref } from 'vue';
import { FloorSelector, STATUS_BAR_HEIGHT } from '@user/client-modules';
export const MapBrowserCom = defineComponent(() => {
const currentFloor = ref(0);
// 可用的楼层列表
const availableFloors = core.floorIds;
const handleFloorChange = (floorIndex: number, floorId: string) => {
console.log(`切换到楼层: ${floorId} (索引: ${floorIndex})`);
// 这里可以执行切换楼层的逻辑
};
const handleClose = () => {
console.log('关闭楼层选择器');
// 返回主界面或执行其他关闭逻辑
};
return () => (
<FloorSelector
loc={[0, 0, 180, STATUS_BAR_HEIGHT]}
floors={availableFloors}
v-model:now={currentFloor.value}
onUpdate={handleFloorChange}
onClose={handleClose}
/>
);
});
注意事项
- 尺寸匹配: 组件设计为与内置状态栏尺寸匹配,可直接替换
- 索引基准: 楼层索引从 0 开始
- 内置集成: 通常不需要直接使用,因为样板已内置完整的地图浏览界面
- 倒序排列: 楼层列表会自动倒序排列