refactor: 优化上下文菜单和机器人菜单组件的代码,简化模板结构,调整样式以提升可读性
This commit is contained in:
parent
53075dbb39
commit
02654b29e0
@ -8,11 +8,7 @@
|
||||
@open-change="handleOpenChange"
|
||||
:z-index="998"
|
||||
>
|
||||
<div
|
||||
ref="triggerRef"
|
||||
class="context-menu-trigger"
|
||||
:style="triggerStyle"
|
||||
/>
|
||||
<div ref="triggerRef" class="context-menu-trigger" :style="triggerStyle" />
|
||||
<template #overlay>
|
||||
<div class="context-menu-overlay">
|
||||
<div class="context-menu-header">
|
||||
@ -41,10 +37,7 @@
|
||||
/>
|
||||
|
||||
<!-- 默认菜单 -->
|
||||
<DefaultMenu
|
||||
v-else
|
||||
@action-complete="handleActionComplete"
|
||||
/>
|
||||
<DefaultMenu v-else @action-complete="handleActionComplete" />
|
||||
</div>
|
||||
</template>
|
||||
</a-dropdown>
|
||||
@ -130,7 +123,7 @@ const handleOpenChange = (open: boolean) => {
|
||||
// 处理操作完成事件
|
||||
const handleActionComplete = (data: any) => {
|
||||
console.log('菜单操作完成:', data);
|
||||
|
||||
|
||||
// 根据操作结果显示相应的提示消息
|
||||
if (data.success) {
|
||||
const actionName = getActionDisplayName(data.action);
|
||||
@ -139,7 +132,7 @@ const handleActionComplete = (data: any) => {
|
||||
const actionName = getActionDisplayName(data.action);
|
||||
message.error(`${actionName}操作失败`);
|
||||
}
|
||||
|
||||
|
||||
emit('actionComplete', data);
|
||||
// 所有操作都不关闭菜单,只有关闭按钮才能关闭
|
||||
};
|
||||
@ -152,37 +145,37 @@ const handleActionComplete = (data: any) => {
|
||||
const getActionDisplayName = (action: string): string => {
|
||||
const actionMap: Record<string, string> = {
|
||||
// 机器人操作
|
||||
'seize_control': '抢占控制权',
|
||||
'enable_orders': '可接单',
|
||||
'disable_orders': '不可接单',
|
||||
'pause': '暂停',
|
||||
'resume': '继续',
|
||||
'go_charge': '前往充电',
|
||||
'go_dock': '前往停靠',
|
||||
'navigate': '路径导航',
|
||||
'start': '启动',
|
||||
'stop': '停止',
|
||||
'reset': '重置',
|
||||
'diagnose': '诊断',
|
||||
'update': '更新',
|
||||
'custom_image': '自定义图片',
|
||||
|
||||
seize_control: '抢占控制权',
|
||||
enable_orders: '可接单',
|
||||
disable_orders: '不可接单',
|
||||
pause: '暂停',
|
||||
resume: '继续',
|
||||
go_charge: '前往充电',
|
||||
go_dock: '前往停靠',
|
||||
navigate: '路径导航',
|
||||
start: '启动',
|
||||
stop: '停止',
|
||||
reset: '重置',
|
||||
diagnose: '诊断',
|
||||
update: '更新',
|
||||
custom_image: '自定义图片',
|
||||
|
||||
// 库位操作
|
||||
'lock': '锁定',
|
||||
'unlock': '解锁',
|
||||
'disable': '禁用',
|
||||
'enable': '启用',
|
||||
'occupy': '占用',
|
||||
'release': '释放',
|
||||
'set_empty_tray': '设置空托盘',
|
||||
'clear_empty_tray': '清除空托盘',
|
||||
|
||||
lock: '锁定',
|
||||
unlock: '解锁',
|
||||
disable: '禁用',
|
||||
enable: '启用',
|
||||
occupy: '占用',
|
||||
release: '释放',
|
||||
set_empty_tray: '设置空托盘',
|
||||
clear_empty_tray: '清除空托盘',
|
||||
|
||||
// 默认操作
|
||||
'refresh': '刷新',
|
||||
'view_info': '查看信息',
|
||||
'settings': '设置',
|
||||
refresh: '刷新',
|
||||
view_info: '查看信息',
|
||||
settings: '设置',
|
||||
};
|
||||
|
||||
|
||||
return actionMap[action] || action;
|
||||
};
|
||||
|
||||
@ -299,5 +292,4 @@ const handleCloseMenu = () => {
|
||||
:root[theme='dark'] .close-icon {
|
||||
color: #ffffffd9;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
@ -415,7 +415,7 @@ onUnmounted(() => {
|
||||
|
||||
.actions-grid {
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
grid-template-columns: 1fr 1fr 1fr;
|
||||
gap: 8px;
|
||||
height: 100%;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user