feat: 扩展设备树功能

- 支持控制是否同步路由参数
- 支持配置允许的事件类型 (select/manage)
- 支持自定义设备节点前缀按钮文字
- 支持向外暴露设备选择逻辑
- 不再封装跳转设备逻辑,由外部实现
- 在车站模式下也支持选择设备
This commit is contained in:
yangsy
2025-12-24 22:57:41 +08:00
parent f99fe0f68e
commit ed2a4f78ff
6 changed files with 101 additions and 60 deletions

View File

@@ -1,8 +1,11 @@
import type { MaybeRefOrGetter } from 'vue';
import { useDeviceManagement } from './use-device-management';
import { useDeviceSelection } from './use-device-selection';
export const useDeviceTree = () => {
const deviceSelection = useDeviceSelection();
export const useDeviceTree = (options?: { syncRoute?: MaybeRefOrGetter<boolean> }) => {
const { syncRoute } = options ?? {};
const deviceSelection = useDeviceSelection({ syncRoute });
const deviceManagement = useDeviceManagement();
return {
@@ -10,3 +13,5 @@ export const useDeviceTree = () => {
...deviceManagement,
};
};
export type UseDeviceTreeReturn = ReturnType<typeof useDeviceTree>;