Unwrap projects payload in cockpit project loader #102

Merged
weichen merged 1 commits from fix/cockpit-project-list-shape into main 2026-10-16 15:32:02 +00:00
+7 -2
View File
@@ -64,8 +64,13 @@ export function DocumentCockpit() {
useEffect(() => {
let c = false
setProjects(null); setPid(''); setOverview(null); setSelected(null); setFilter(''); setError('')
api.rdmCommand<ProjectView[]>('rdm.project.list')
.then(list => { if (!c) setProjects(Array.isArray(list) ? list : []) })
api.rdmCommand<{ projects?: ProjectView[] } | ProjectView[]>('rdm.project.list')
.then(list => {
if (!c) return
// rdm.project.list 返回 { projects: [...] };容忍裸数组形态。
const rows = Array.isArray(list) ? list : (list?.projects ?? [])
setProjects(rows)
})
.catch(e => { if (!c) setError(e.message) })
return () => { c = true }
}, [identity])