实况跟踪组件,时间显示左边,内容显示右边修改

main
zhufu 2026-03-13 16:49:14 +08:00
parent cc7e9267e7
commit 854aca18cd
1 changed files with 42 additions and 32 deletions

View File

@ -1,21 +1,26 @@
<template>
<div class="ZhiGan_ModalTimeLine">
<n-timeline :icon-size="option.dataStyle.iconSize" :size="option.dataStyle.size">
<n-timeline-item
<a-timeline mode="left" :icon-size="option.dataStyle.iconSize" :size="option.dataStyle.size">
<a-timeline-item
class="list"
v-for="(item, index) in option.dataset"
:key="item"
:type="item.type"
>
<template #icon></template>
<template #header>
<!-- 标题 -->
<template #label>
<div class="time-box">
<div class="date">{{ item.time.split(' ')[0] }}</div>
<div class="time">{{ item.time.split(' ')[1] }}</div>
</div>
</template>
<template #default>
<div v-if="option.dataStyle.showTitle">
<div
v-if="index == 0"
:style="{
color: option.dataStyle.titleColorFirst,
fontSize: `${option.dataStyle.titleFontSizeFirst}px`,
fontWeight: 700,
}"
>
{{ item.title }}
@ -25,36 +30,12 @@
:style="{
color: option.dataStyle.titleColor,
fontSize: `${option.dataStyle.titleFontSize}px`,
fontWeight: 700,
}"
>
{{ item.title }}
</div>
</div>
</template>
<template #default>
<div v-if="option.dataStyle.showTime">
<!-- 时间 -->
<div
v-if="index == 0"
:style="{
color: option.dataStyle.timeColorFirst,
fontSize: `${option.dataStyle.timeFontSizeFirst}px`,
}"
>
{{ item.time }}
</div>
<div
v-else
:style="{
color: option.dataStyle.timeColor,
fontSize: `${option.dataStyle.timeFontSize}px`,
}"
>
{{ item.time }}
</div>
</div>
<!-- 虚线 -->
<span v-if="option.dataStyle.showLine">-------------------------------</span>
<!-- 文本 -->
<div v-if="option.dataStyle.showContent">
<div
@ -255,8 +236,8 @@
</div>
</div>
</template>
</n-timeline-item>
</n-timeline>
</a-timeline-item>
</a-timeline>
</div>
</template>
@ -335,6 +316,7 @@
// callback
useChartDataFetch(props.chartConfig, useChartEditStore, (resData: any[]) => {
option.dataset = resData;
console.log(1111111111,resData)
});
});
@ -386,6 +368,7 @@
useChartDataFetch(props.chartConfig, useChartEditStore, (resData: any[]) => {
if (resData) {
option.dataset = resData;
console.log(1111111111,resData)
}
});
}
@ -394,6 +377,15 @@
</script>
<style lang="scss" scoped>
.time-box{
width: 100px;
color: rgb(255, 255, 255);
font-size: 16px;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
}
.ZhiGan_ModalTimeLine {
overflow-y: auto;
width: v-bind('`${w}px`');
@ -401,7 +393,25 @@
margin-top: v-bind('`${option.dataStyle.marginTop}px`');
background: v-bind('`${option.dataStyle.background}`');
border: 1px solid v-bind('`${option.dataStyle.borderColor}`');
padding: 10px;
display: block;
:deep(.ant-timeline-item-label){
width: 100px !important;
}
:deep(.ant-timeline-item-tail){
left: 110px !important;
border-inline-start: 2px solid #103A26;;
}
:deep(.ant-timeline-item-head){
left: 110px !important;
border-color: rgb(118, 124, 130);
}
:deep(.ant-timeline-item-content){
margin-left: 130px !important;
}
:deep(.ant-timeline-item-content){
inset-inline-start: initial !important;
}
}
.ZhiGan_ModalTimeLine::-webkit-scrollbar {