// stores/useAlarmDataStore.js import { defineStore } from "pinia"; import { ref } from "vue"; const useAlarmDataStore = defineStore("alarmData", () => { const alarmData = ref([]); // 建立 alarmData 的函數 const createAlarmData = (alarmList) => { alarmData.value = alarmList.children.map((item, index) => ({ key: item.key, name: item.name || `Alarm ${index + 1}`, alarmCount: 0, unackedCount: 0, alarmOrd: item.children && item.children[0] ? item.children[0].ord : null, // 儲存 alarmOrd Ord: item.ord ? item.ord : null, })); }; // 更新特定 alarm 數據的函數 const updateAlarmItem = (index, alarmCount, unackedCount) => { if (index >= 0 && index < alarmData.value.length) { alarmData.value.splice(index, 1, { ...alarmData.value[index], alarmCount, unackedCount, }); } }; return { alarmData, createAlarmData, updateAlarmItem }; }); export default useAlarmDataStore;