eps 首次加载成功自动刷新

This commit is contained in:
icssoa 2022-04-07 17:36:53 +08:00
parent 22e2844047
commit 1967e8a53d

View File

@ -5,7 +5,7 @@ import { storage, toCamel } from "../utils";
// 获取标签名 // 获取标签名
function getNames(v: any) { function getNames(v: any) {
return Object.getOwnPropertyNames(v.constructor.prototype).filter( return Object.getOwnPropertyNames(v.constructor.prototype).filter(
(e) => !["namespace", "constructor", "request"].includes(e) (e) => !["namespace", "constructor", "request", "permission"].includes(e)
); );
} }
@ -70,9 +70,15 @@ export function useEps(service: Service) {
url: "/admin/base/open/eps" url: "/admin/base/open/eps"
}) })
.then(async (res) => { .then(async (res) => {
const isLoaded: boolean = storage.get("eps");
storage.set("eps", res); storage.set("eps", res);
set(res, true);
console.log("[Eps] 初始化成功。"); if (!isLoaded) {
location.reload();
} else {
set(res, true);
console.log("[Eps] 初始化成功。");
}
}) })
.catch((err) => { .catch((err) => {
console.error("[Eps] 获取失败!", err.message); console.error("[Eps] 获取失败!", err.message);
@ -147,12 +153,14 @@ export function useEps(service: Service) {
if (!d[k].permission) { if (!d[k].permission) {
d[k].permission = {}; d[k].permission = {};
for (const i in d[k]) { const ks = Array.from(new Set([...names, ...getNames(d[k])]));
d[k].permission[i] = `${d[k].namespace.replace(
ks.forEach((e) => {
d[k].permission[e] = `${d[k].namespace.replace(
"admin/", "admin/",
"" ""
)}/${i}`.replace(/\//g, ":"); )}/${e}`.replace(/\//g, ":");
} });
} }
list.push(e); list.push(e);