catch global error and display on top of page
This commit is contained in:
@@ -12,7 +12,7 @@ import { isIframe } from "./libs/iframe";
|
|||||||
/**
|
/**
|
||||||
* 入口函数
|
* 入口函数
|
||||||
*/
|
*/
|
||||||
(async () => {
|
const init = async () => {
|
||||||
const href = isIframe ? document.referrer : document.location.href;
|
const href = isIframe ? document.referrer : document.location.href;
|
||||||
const setting = await getSetting();
|
const setting = await getSetting();
|
||||||
const rules = await getRules();
|
const rules = await getRules();
|
||||||
@@ -38,4 +38,15 @@ import { isIframe } from "./libs/iframe";
|
|||||||
}
|
}
|
||||||
return { data: translator.rule };
|
return { data: translator.rule };
|
||||||
});
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
(async () => {
|
||||||
|
try {
|
||||||
|
await init();
|
||||||
|
} catch (err) {
|
||||||
|
const $err = document.createElement("div");
|
||||||
|
$err.innerText = `KISS-Translator Error: ${err.message}`;
|
||||||
|
$err.style.cssText = "background:red; color:#fff; z-index:10000;";
|
||||||
|
document.body.prepend($err);
|
||||||
|
}
|
||||||
})();
|
})();
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ import { isIframe } from "./libs/iframe";
|
|||||||
/**
|
/**
|
||||||
* 入口函数
|
* 入口函数
|
||||||
*/
|
*/
|
||||||
(async () => {
|
const init = async () => {
|
||||||
// 设置页面
|
// 设置页面
|
||||||
if (
|
if (
|
||||||
document.location.href.includes(process.env.REACT_APP_OPTIONSPAGE_DEV) ||
|
document.location.href.includes(process.env.REACT_APP_OPTIONSPAGE_DEV) ||
|
||||||
@@ -74,22 +74,37 @@ import { isIframe } from "./libs/iframe";
|
|||||||
|
|
||||||
// 注册菜单
|
// 注册菜单
|
||||||
if (isGm) {
|
if (isGm) {
|
||||||
GM.registerMenuCommand(
|
try {
|
||||||
"Toggle Translate",
|
GM.registerMenuCommand(
|
||||||
(event) => {
|
"Toggle Translate",
|
||||||
translator.toggle();
|
(event) => {
|
||||||
},
|
translator.toggle();
|
||||||
"Q"
|
},
|
||||||
);
|
"Q"
|
||||||
GM.registerMenuCommand(
|
);
|
||||||
"Toggle Style",
|
GM.registerMenuCommand(
|
||||||
(event) => {
|
"Toggle Style",
|
||||||
translator.toggleStyle();
|
(event) => {
|
||||||
},
|
translator.toggleStyle();
|
||||||
"C"
|
},
|
||||||
);
|
"C"
|
||||||
|
);
|
||||||
|
} catch (err) {
|
||||||
|
console.log("[registerMenuCommand]", err);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 同步订阅规则
|
// 同步订阅规则
|
||||||
trySyncAllSubRules(setting);
|
trySyncAllSubRules(setting);
|
||||||
|
};
|
||||||
|
|
||||||
|
(async () => {
|
||||||
|
try {
|
||||||
|
await init();
|
||||||
|
} catch (err) {
|
||||||
|
const $err = document.createElement("div");
|
||||||
|
$err.innerText = `KISS-Translator Error: ${err.message}`;
|
||||||
|
$err.style.cssText = "background:red; color:#fff; z-index:10000;";
|
||||||
|
document.body.prepend($err);
|
||||||
|
}
|
||||||
})();
|
})();
|
||||||
|
|||||||
Reference in New Issue
Block a user