| | |
| | | height: `${CELL_HEIGHT}px`, |
| | | }" |
| | | > |
| | | <span class="cursor-pointer" @mouseover="valueMouseOver($event, item)" @mouseleave="valueMouseLeave"> |
| | | <span |
| | | class="cursor-pointer" |
| | | @mouseover="valueMouseOver($event, item)" |
| | | @mouseleave="valueMouseLeave" |
| | | @click="emit('itemClick', item, type)" |
| | | > |
| | | {{ item[type] }} |
| | | </span> |
| | | </div> |
| | |
| | | <div v-if="hoverState.data?.OTITLE" class="font-bold mb-1">{{ hoverState.data?.OTITLE }}</div> |
| | | <div class="w-full space-y-1"> |
| | | <div v-if="hoverState.data?.OTYPE" class="flex"> |
| | | <div class="w-16">类型</div> |
| | | <div class="w-8">类型</div> |
| | | <div class="before:content-[':'] before:pr-1.5">{{ hoverState.data?.OTYPE }}</div> |
| | | </div> |
| | | <div v-if="hoverState.data?.ONAME" class="flex"> |
| | | <div class="w-16">编号</div> |
| | | <div class="w-8">编号</div> |
| | | <div class="before:content-[':'] before:pr-1.5">{{ hoverState.data?.ONAME }}</div> |
| | | </div> |
| | | <div v-if="hoverState.data?.[type] || hoverState.data?.[type] === 0" class="flex"> |
| | | <div class="w-16">监测值</div> |
| | | <div class="w-8">监测</div> |
| | | <div class="before:content-[':'] before:pr-1.5">{{ hoverState.data?.[type] }}</div> |
| | | </div> |
| | | <div class="flex" v-if="hoverState.data?.OTIME"> |
| | | <div class="w-16">数据时间</div> |
| | | <div class="w-8">时间</div> |
| | | <div class="before:content-[':'] before:pr-1.5">{{ hoverState.data?.OTIME }}</div> |
| | | </div> |
| | | </div> |
| | |
| | | import { reactive, type PropType } from 'vue'; |
| | | import { BORDER_COLOR, CELL_HEIGHT, CONTENT_CELL_CLASS, ROW_HEADER_CELL_CLASS, THICK_BORDER_WIDTH } from './constants'; |
| | | import type { MonitorValue } from './types'; |
| | | |
| | | const emit = defineEmits(['itemClick']); |
| | | const props = defineProps({ |
| | | /** @description 标题 */ |
| | | title: { |