2022-10-09 17:56:16 +08:00

40 lines
1.4 KiB
TypeScript

import CommonUtils from "../../../class/utils/CommonUtils";
import Log from "../../../class/Log";
/**
* @deprecated
*/
export default async function getSidebarData() {
let ret = {};
let sidebar_id = null;
let sessionKeys = Object.keys(sessionStorage);
if (sessionKeys.length < 2) {
// dom获取
let sidebar_menu_list = document.querySelectorAll('#sidebar a span[class*="linkName___"]');
Log.info({ sidebar_menu_list })
if (sidebar_menu_list.length === 0) {
await CommonUtils.elementReady('#sidebar a span[class*="linkName___"]');
sidebar_menu_list = document.querySelectorAll('#sidebar a span[class*="linkName___"]');
}
sidebar_menu_list.forEach(node => ret[node.innerHTML.trim().toLowerCase().replaceAll(' ', '_')] = true);
} else {
// session storage获取
for (let key of sessionKeys) {
if (key.startsWith('sidebarData')) {
sidebar_id = JSON.parse(sessionStorage.getItem(key));
break;
}
}
if (sidebar_id !== null) {
for (let area of Object.keys(sidebar_id['areas'])) {
ret[area] = true;
}
}
}
Log.info({ ret, sidebar_id, sessionKeys })
if (Object.keys(ret).length === 0) {
Log.error('无法获取数据,建议刷新重试');
}
return ret;
}