40 lines
1.4 KiB
TypeScript
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;
|
|
} |