refactor: 优化查询链的耗时和错误日志输出

This commit is contained in:
yangsy
2026-01-15 14:36:28 +08:00
parent 86775a6eb2
commit c4963b5b70
3 changed files with 14 additions and 9 deletions

View File

@@ -56,8 +56,8 @@ export const useStationAlarmsMutation = () => {
alarmStore.setStationAlarms(station.code, stationAlarms); alarmStore.setStationAlarms(station.code, stationAlarms);
}, },
onError: (error) => { onError: (error) => {
console.error(error);
if (isCancel(error) || error instanceof CancelledError) return; if (isCancel(error) || error instanceof CancelledError) return;
console.error(error);
const errorFeedback = parseErrorFeedback(error); const errorFeedback = parseErrorFeedback(error);
window.$message.error(errorFeedback); window.$message.error(errorFeedback);
}, },
@@ -77,11 +77,13 @@ export const useLineAlarmsQuery = () => {
queryKey: computed(() => [LINE_ALARMS_QUERY_KEY]), queryKey: computed(() => [LINE_ALARMS_QUERY_KEY]),
enabled: false, enabled: false,
queryFn: async ({ signal }) => { queryFn: async ({ signal }) => {
console.time(LINE_ALARMS_QUERY_KEY); const startTime = performance.now();
for (const station of stations.value) { for (const station of stations.value) {
await getStationAlarms({ station, signal }).catch(() => {}); await getStationAlarms({ station, signal }).catch(() => {});
} }
console.timeEnd(LINE_ALARMS_QUERY_KEY); const endTime = performance.now();
console.log(`${LINE_ALARMS_QUERY_KEY}: ${endTime - startTime} ms`);
return null; return null;
}, },
}); });

View File

@@ -23,8 +23,8 @@ export const useStationDevicesMutation = () => {
deviceStore.setStationDevices(station.code, devices); deviceStore.setStationDevices(station.code, devices);
}, },
onError: (error) => { onError: (error) => {
console.error(error);
if (isCancel(error) || error instanceof CancelledError) return; if (isCancel(error) || error instanceof CancelledError) return;
console.error(error);
const errorFeedback = parseErrorFeedback(error); const errorFeedback = parseErrorFeedback(error);
window.$message.error(errorFeedback); window.$message.error(errorFeedback);
}, },
@@ -44,11 +44,13 @@ export const useLineDevicesQuery = () => {
queryKey: computed(() => [LINE_DEVICES_QUERY_KEY]), queryKey: computed(() => [LINE_DEVICES_QUERY_KEY]),
enabled: false, enabled: false,
queryFn: async ({ signal }) => { queryFn: async ({ signal }) => {
console.time(LINE_DEVICES_QUERY_KEY); const startTime = performance.now();
for (const station of stations.value) { for (const station of stations.value) {
await getStationDevices({ station, signal }).catch(() => {}); await getStationDevices({ station, signal }).catch(() => {});
} }
console.timeEnd(LINE_DEVICES_QUERY_KEY); const endTime = performance.now();
console.log(`${LINE_DEVICES_QUERY_KEY}: ${endTime - startTime} ms`);
return null; return null;
}, },
}); });

View File

@@ -35,8 +35,8 @@ export const useLineStationsMutation = () => {
stationStore.setStations(stations); stationStore.setStations(stations);
}, },
onError: (error) => { onError: (error) => {
console.error(error);
if (isCancel(error) || error instanceof CancelledError) return; if (isCancel(error) || error instanceof CancelledError) return;
console.error(error);
const errorFeedback = parseErrorFeedback(error); const errorFeedback = parseErrorFeedback(error);
window.$message.error(errorFeedback); window.$message.error(errorFeedback);
}, },
@@ -57,9 +57,10 @@ export const useLineStationsQuery = () => {
refetchInterval: requestInterval * 1000, refetchInterval: requestInterval * 1000,
staleTime: (requestInterval * 1000) / 2, staleTime: (requestInterval * 1000) / 2,
queryFn: async ({ signal }) => { queryFn: async ({ signal }) => {
console.time(LINE_STATIONS_QUERY_KEY); const startTime = performance.now();
await getLineStations({ signal }).catch(() => {}); await getLineStations({ signal }).catch(() => {});
console.timeEnd(LINE_STATIONS_QUERY_KEY); const endTime = performance.now();
console.log(`${LINE_STATIONS_QUERY_KEY}: ${endTime - startTime} ms`);
if (!pollingEnabled.value) return null; if (!pollingEnabled.value) return null;
await refetchLineDevicesQuery(); await refetchLineDevicesQuery();