移除倒數計時相關的程式碼,簡化 MQTT 模組的邏輯
This commit is contained in:
parent
64f35db51b
commit
65ace7a093
@ -12,9 +12,9 @@ const { iotSchemaTag } = inject("asset_modal_options");
|
||||
|
||||
// MQTT相關
|
||||
const receivedMessages = ref([]); // 儲存接收到的訊息
|
||||
const countdown = ref(60); // 倒計時初始為 60 秒
|
||||
const hasStartedCountdown = ref(false); // 是否已開始倒數
|
||||
let timer = null; // 記錄計時器
|
||||
// const countdown = ref(60); // 倒計時初始為 60 秒
|
||||
// const hasStartedCountdown = ref(false); // 是否已開始倒數
|
||||
// let timer = null; // 記錄計時器
|
||||
let mqttInterval = null;
|
||||
const mqttCardDataList = ref([]); // 顯示在畫面上的卡片資料
|
||||
|
||||
@ -56,11 +56,11 @@ const openModal = async () => {
|
||||
time: payload.time,
|
||||
});
|
||||
|
||||
// ⬇第一次收到資料才開始倒數
|
||||
if (!hasStartedCountdown.value) {
|
||||
hasStartedCountdown.value = true;
|
||||
startCountdown();
|
||||
}
|
||||
// // ⬇第一次收到資料才開始倒數
|
||||
// if (!hasStartedCountdown.value) {
|
||||
// hasStartedCountdown.value = true;
|
||||
// startCountdown();
|
||||
// }
|
||||
} else {
|
||||
// console.log("已存在相同時間略過:", payload.time);
|
||||
}
|
||||
@ -73,26 +73,26 @@ const openModal = async () => {
|
||||
}, 5000);
|
||||
};
|
||||
|
||||
const startCountdown = () => {
|
||||
countdown.value = 60;
|
||||
|
||||
timer = setInterval(() => {
|
||||
if (countdown.value > 1) {
|
||||
countdown.value--;
|
||||
} else {
|
||||
clearInterval(timer);
|
||||
timer = null;
|
||||
onCancel(); // 60秒結束自動關閉
|
||||
}
|
||||
}, 1000);
|
||||
};
|
||||
// const startCountdown = () => {
|
||||
// countdown.value = 60;
|
||||
//
|
||||
// timer = setInterval(() => {
|
||||
// if (countdown.value > 1) {
|
||||
// countdown.value--;
|
||||
// } else {
|
||||
// clearInterval(timer);
|
||||
// timer = null;
|
||||
// onCancel(); // 60秒結束自動關閉
|
||||
// }
|
||||
// }, 1000);
|
||||
// };
|
||||
|
||||
const onCancel = async () => {
|
||||
// 清空資料與狀態
|
||||
receivedMessages.value = [];
|
||||
mqttCardDataList.value = [];
|
||||
countdown.value = 60;
|
||||
hasStartedCountdown.value = false;
|
||||
// countdown.value = 60;
|
||||
// hasStartedCountdown.value = false;
|
||||
|
||||
mqtt_test.close();
|
||||
|
||||
@ -112,11 +112,11 @@ const onCancel = async () => {
|
||||
mqttInterval = null;
|
||||
}
|
||||
|
||||
// 清除倒數 Timer
|
||||
if (timer) {
|
||||
clearInterval(timer);
|
||||
timer = null;
|
||||
}
|
||||
// // 清除倒數 Timer
|
||||
// if (timer) {
|
||||
// clearInterval(timer);
|
||||
// timer = null;
|
||||
// }
|
||||
};
|
||||
|
||||
const onSubmit = async () => {
|
||||
@ -212,15 +212,6 @@ const onSubmit = async () => {
|
||||
</template>
|
||||
<template #modalAction>
|
||||
<div class="relative w-full flex justify-end items-center gap-12">
|
||||
<!-- 資料出現後才顯示倒數計時,置中顯示 -->
|
||||
<div
|
||||
v-if="mqttCardDataList.length > 0"
|
||||
class="absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 flex items-center gap-2 text-sm"
|
||||
>
|
||||
<span>Auto close in</span>
|
||||
<span>{{ countdown }}s</span>
|
||||
</div>
|
||||
|
||||
<button
|
||||
type="reset"
|
||||
class="btn btn-outline-success"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user