♻️ 完善日志,重构设置页面

This commit is contained in:
目棃
2024-01-22 21:15:38 +08:00
parent be028a318d
commit c0e7633b51
12 changed files with 676 additions and 486 deletions

View File

@@ -29,6 +29,7 @@ import TSwitchTheme from "../components/app/t-switchTheme.vue";
import TShareBtn from "../components/main/t-shareBtn.vue";
import ToLoading from "../components/overlay/to-loading.vue";
import { useAppStore } from "../store/modules/app";
import TGLogger from "../utils/TGLogger";
import { saveImgLocal } from "../utils/TGShare";
import { createTGWindow } from "../utils/TGWindow";
import TGRequest from "../web/request/TGRequest";
@@ -57,6 +58,7 @@ onMounted(async () => {
if (!annoId) {
loadingEmpty.value = true;
loadingTitle.value = "未找到数据";
await TGLogger.Error("[t-anno.vue] 未找到数据");
return;
}
// 获取数据
@@ -70,7 +72,9 @@ onMounted(async () => {
await appWindow.setTitle(`Anno_${annoId} ${annoData.value.title}`);
annoRef.value = <HTMLElement>document.querySelector(".anno-body");
} catch (error) {
console.error(error);
if (error instanceof Error)
await TGLogger.Error(`[t-anno.vue][${annoId}] ${error.name}${error.message}`);
else console.error(error);
loadingEmpty.value = true;
loadingTitle.value = "公告不存在或解析失败";
await appWindow.setTitle(`Anno_${annoId} Parsing Error`);
@@ -78,9 +82,7 @@ onMounted(async () => {
}
// 打开 json
const isDev = useAppStore().devMode ?? false;
if (isDev) {
createAnnoJson(annoId);
}
if (isDev) createAnnoJson(annoId);
setTimeout(() => {
loading.value = false;
}, 200);

View File

@@ -61,6 +61,7 @@ import TSwitchTheme from "../components/app/t-switchTheme.vue";
import ToLoading from "../components/overlay/to-loading.vue";
import Mys from "../plugins/Mys";
import { useAppStore } from "../store/modules/app";
import TGLogger from "../utils/TGLogger";
// loading
const loading = ref<boolean>(true);
@@ -80,7 +81,7 @@ function flushTimeStatus(): void {
const timeDiff = Number(jsonData.draw_time) * 1000 - timeNow;
if (timeDiff <= 0) {
timeStatus.value = "已开奖";
clearInterval(lotteryTimer);
clearInterval(lotteryTimer.value);
} else {
const day = Math.floor(timeDiff / (24 * 3600 * 1000));
const hour = Math.floor((timeDiff % (24 * 3600 * 1000)) / (3600 * 1000));
@@ -108,6 +109,7 @@ onMounted(async () => {
if (!lotteryId) {
loadingEmpty.value = true;
loadingTitle.value = "未找到数据";
await TGLogger.Error("[t-lottery.vue] 未找到 lottery_id");
return;
}
// 获取数据
@@ -116,6 +118,7 @@ onMounted(async () => {
if (!jsonData) {
loadingEmpty.value = true;
loadingTitle.value = "未找到数据";
await TGLogger.Error("[t-lottery.vue] 未找到数据");
return;
}
await appWindow.setTitle("抽奖详情 " + jsonData.lottery_entity_summary);
@@ -147,7 +150,7 @@ function getUpWay(upWay: string): string {
// 监听 timeStatus
onUpdated(() => {
if (timeStatus.value === "已开奖") {
clearInterval(lotteryTimer);
clearInterval(lotteryTimer.value);
}
});
</script>

View File

@@ -90,6 +90,7 @@ import TpoCollection from "../components/post/tpo-collection.vue";
import Mys from "../plugins/Mys";
import { useAppStore } from "../store/modules/app";
import TGClient from "../utils/TGClient";
import TGLogger from "../utils/TGLogger";
import { createTGWindow } from "../utils/TGWindow";
// loading
@@ -123,6 +124,7 @@ onMounted(async () => {
loadingEmpty.value = true;
loadingTitle.value = "未找到数据";
await appWindow.setTitle("未找到数据");
await TGLogger.Error("[t-post.vue] PostID 不存在");
return;
}
// 获取数据
@@ -134,18 +136,22 @@ onMounted(async () => {
shareTitle.value = `Post_${postId}`;
await appWindow.setTitle(`Post_${postId} ${postData.value.post.subject}`);
} catch (error) {
console.error(error);
if (error instanceof Error) {
await TGLogger.Error(`[t-post.vue] ${error.name}: ${error.message}`);
loadingTitle.value = error.name;
loadingSub.value = error.message;
} else {
console.error(error);
loadingTitle.value = "帖子不存在或解析失败";
loadingSub.value = "请检查帖子是否存在或者是否为合法的帖子";
}
loadingEmpty.value = true;
loadingTitle.value = "帖子不存在或解析失败";
loadingSub.value = error instanceof Error ? error.message : <string>error;
await appWindow.setTitle(`Post_${postId} Parsing Error`);
return;
}
// 打开 json
const isDev = useAppStore().devMode ?? false;
if (isDev) {
createPostJson(postId);
}
if (isDev) createPostJson(postId);
await nextTick(() => {
shareTimeTimer.value = setInterval(() => {
shareTime.value = Math.floor(Date.now() / 1000);
@@ -184,6 +190,10 @@ function getRenderPost(data: TGApp.Plugins.Mys.Post.FullData): TGApp.Plugins.Mys
try {
jsonParse = parseContent(data.post.content);
} catch (e) {
if (e instanceof SyntaxError) {
console.error(e);
TGLogger.Warn(`[t-post.vue] ${e.name}: ${e.message}`);
}
jsonParse = data.post.structured_content;
}
}