diff --git a/app/src/renderer/src/stores/mqtt.js b/app/src/renderer/src/stores/mqtt.js index b4d8537..c9a007d 100644 --- a/app/src/renderer/src/stores/mqtt.js +++ b/app/src/renderer/src/stores/mqtt.js @@ -81,6 +81,10 @@ export function useMqttStore() { let totalMessages = computed(() => messages.value.length); + function sortServers() { + servers.value.sort((a, b) => a.name.localeCompare(b.name, 'zh-CN')); + } + // ==================== 初始化 ==================== async function init() { @@ -91,6 +95,7 @@ export function useMqttStore() { let data = await window.api.getServers(); servers.value = data; + sortServers(); setupListeners(); } catch (e) { @@ -117,6 +122,7 @@ export function useMqttStore() { let server = await window.api.addServer(config); servers.value.push(server); + sortServers(); if (!activeServerId.value) { activeServerId.value = server.id; @@ -135,6 +141,7 @@ export function useMqttStore() { if (idx !== -1) { servers.value[idx] = { ...servers.value[idx], ...result }; } + sortServers(); } return result; @@ -146,6 +153,7 @@ export function useMqttStore() { await window.api.deleteServer(id); servers.value = servers.value.filter((s) => s.id !== id); + sortServers(); if (activeServerId.value === id) { activeServerId.value = servers.value.length > 0 ? servers.value[0].id : null;