Files
tunnel-cloud-web/src/components/content/badGasInfo/BadGasInfo.vue
2023-12-11 10:59:44 +08:00

100 lines
2.5 KiB
Vue

<template>
<div id="bad-gas-info">
<div class="title">有害气体</div>
<div class="info-list">
<gas-info-item :gasInfo="gasInfo" />
<gas-info-item :gasInfo="gasInfo2" />
<gas-info-item :gasInfo="gasInfo3" />
<gas-info-item :gasInfo="gasInfo4" />
<gas-info-item :gasInfo="gasInfo5" />
<gas-info-item :gasInfo="gasInfo6" />
</div>
</div>
</template>
<script setup>
import { reactive } from "vue";
import GasInfoItem from "./childComps/GasInfoItem.vue";
const gasInfo = reactive({
name: "一氧化硫", //气体名称
max: 100, //最大值
value: 60, //传感器值
point: 50, //阈值
});
const gasInfo2 = reactive({
name: "一氧化氮", //气体名称
max: 100, //最大值
value: 40, //传感器值
point: 10, //阈值
});
const gasInfo3 = reactive({
name: "一氧化碳", //气体名称
max: 100, //最大值
value: 15, //传感器值
point: 70, //阈值
});
const gasInfo4 = reactive({
name: "二氧化碳", //气体名称
max: 100, //最大值
value: 25, //传感器值
point: 40, //阈值
});
const gasInfo5 = reactive({
name: "硫化氢", //气体名称
max: 100, //最大值
value: 30, //传感器值
point: 20, //阈值
});
const gasInfo6 = reactive({
name: "二氧化硫", //气体名称
max: 100, //最大值
value: 20, //传感器值
point: 20, //阈值
});
const props = defineProps({
list: Array
});
watch(() => props.list, (now, old) => {
console.log('传感器 ', now, old)
// wpList.value=now
}, {deep: true});
// setInterval(() => {
// gasInfo.value = parseInt(Math.random() * 10) * 10;
// gasInfo2.value = parseInt(Math.random() * 10) * 10;
// gasInfo3.value = parseInt(Math.random() * 10) * 10;
// gasInfo4.value = parseInt(Math.random() * 10) * 10;
// gasInfo6.value = parseInt(Math.random() * 10) * 10;
// gasInfo5.value = parseInt(Math.random() * 10) * 10;
// }, 2000);
</script>
<style lang="scss" scoped>
#bad-gas-info {
position: absolute;
z-index: 100;
width: 824px;
height: 621px;
top: 1441px;
right: 72px;
background-image: url(@/assets/images/badGasInfo/bg.png);
.title {
width: 128px;
height: 45px;
font-size: 32px;
font-family: PingFang-SC, PingFang-SC;
font-weight: 800;
color: #38cafb;
line-height: 45px;
margin: 22px 0px 0px 62px;
}
.info-list {
width: 100%;
height: calc(621px - 45px - 22px);
display: flex;
flex-wrap: wrap;
justify-content: space-around;
padding: 10px 0px 0px 10px;
}
}
</style>