s
This commit is contained in:
parent
6dc82e8f77
commit
a9ba6c5f56
Binary file not shown.
After Width: | Height: | Size: 161 KiB |
Binary file not shown.
After Width: | Height: | Size: 152 KiB |
@ -3,12 +3,14 @@
|
|||||||
{
|
{
|
||||||
"label": "场景总数",
|
"label": "场景总数",
|
||||||
"value": 264,
|
"value": 264,
|
||||||
"color": "#00E5FF"
|
"color": "#00E5FF",
|
||||||
|
"image": "scene-total.png"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"label": "智控场景",
|
"label": "智控场景",
|
||||||
"value": 264,
|
"value": 264,
|
||||||
"color": "#FFD700"
|
"color": "#FFD700",
|
||||||
|
"image": "scene-control.png"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -11,9 +11,7 @@
|
|||||||
<div v-for="(item, index) in option.dataset" :key="index" class="scene-item">
|
<div v-for="(item, index) in option.dataset" :key="index" class="scene-item">
|
||||||
<div class="item-label" :style="{ color: option.labelColor, fontSize: option.labelSize + 'px' }">{{ item.label }}</div>
|
<div class="item-label" :style="{ color: option.labelColor, fontSize: option.labelSize + 'px' }">{{ item.label }}</div>
|
||||||
<div class="cube-container">
|
<div class="cube-container">
|
||||||
<div class="cube-image" :style="{ '--glow-color': item.color }">
|
<img :src="getImageUrl(item.image)" class="cube-image" />
|
||||||
<svg-icon icon-class="camera" class="camera-icon"></svg-icon>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="item-value" :style="{ color: option.valueColor, fontSize: option.valueSize + 'px' }">{{ item.value }}</div>
|
<div class="item-value" :style="{ color: option.valueColor, fontSize: option.valueSize + 'px' }">{{ item.value }}</div>
|
||||||
</div>
|
</div>
|
||||||
@ -33,6 +31,10 @@ const props = defineProps({
|
|||||||
})
|
})
|
||||||
|
|
||||||
const option = computed(() => props.chartConfig.option)
|
const option = computed(() => props.chartConfig.option)
|
||||||
|
|
||||||
|
const getImageUrl = (name: string) => {
|
||||||
|
return new URL(`./assets/${name}`, import.meta.url).href
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@ -49,10 +51,12 @@ const option = computed(() => props.chartConfig.option)
|
|||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
background-color: #1A385A;
|
background: linear-gradient(to right, #1A385A, #2A588A, #1A385A);
|
||||||
padding: 5px 15px;
|
border: 1px solid #00E5FF;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
|
padding: 5px 15px;
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
|
box-shadow: 0 0 10px #00E5FF;
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -89,36 +93,25 @@ const option = computed(() => props.chartConfig.option)
|
|||||||
|
|
||||||
.cube-container {
|
.cube-container {
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 120px;
|
width: 150px;
|
||||||
height: 120px;
|
height: 150px;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
|
|
||||||
.cube-image {
|
.cube-image {
|
||||||
width: 80px;
|
width: 100%;
|
||||||
height: 80px;
|
height: 100%;
|
||||||
border: 2px solid var(--glow-color);
|
object-fit: contain;
|
||||||
background-color: rgba(var(--glow-color), 0.1);
|
|
||||||
box-shadow: 0 0 15px var(--glow-color);
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
|
|
||||||
.camera-icon {
|
|
||||||
font-size: 40px;
|
|
||||||
color: var(--glow-color);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-value {
|
.item-value {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
background: #2A3A5B;
|
font-family: 'DS-Digital', 'Arial', sans-serif;
|
||||||
padding: 5px 20px;
|
text-shadow: 0 0 10px #00E5FF;
|
||||||
border-radius: 5px;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
Loading…
Reference in New Issue
Block a user