auto-sync: 2026-05-21 08:17:23

This commit is contained in:
cfdaily
2026-05-21 08:17:23 +08:00
parent 733f6f9e22
commit ad6bdc193e
+10 -5
View File
@@ -372,7 +372,7 @@ export const useStore = create<AppStore>((set, get) => ({
// v2.6: 多项目
projects: {},
selectedProjectId: null,
selectedProjectId: (() => { try { const v = localStorage.getItem('selectedProjectId'); return v !== null ? v : ''; } catch { return ''; } })(),
// v2.6: 原生 V2Task
v2tasks: [],
@@ -507,13 +507,18 @@ export const useStore = create<AppStore>((set, get) => ({
// 同步项目列表
const projects = (data.syncStatus as any)?.projects?.projects || {};
set({ projects });
// 自动选择第一个项目
// 自动选择:仅在 localStorage 无记录时
const s = get();
if (!s.selectedProjectId && s.selectedProjectId !== '' && s.selectedProjectId !== '_general' && Object.keys(projects).length > 0) {
const realPids = Object.keys(projects).filter(p => !p.startsWith('_'));
const firstPid = realPids[0] || Object.keys(projects)[0];
const savedPid = localStorage.getItem('selectedProjectId');
if (savedPid === null && Object.keys(projects).length > 0) {
const realPids = Object.keys(projects).filter((p: string) => !p.startsWith('_'));
const firstPid = realPids[0] || Object.keys(projects)[0] || '';
set({ selectedProjectId: firstPid });
setApiProjectId(firstPid);
try { localStorage.setItem('selectedProjectId', firstPid); } catch {}
} else if (savedPid !== null && s.selectedProjectId !== savedPid) {
set({ selectedProjectId: savedPid });
setApiProjectId(savedPid);
}
// Also preload officials for monitor tab
if (!s.officialsData) {