bill hai 1 mes
pai
achega
b1f87663fc

+ 2 - 2
src/example/env.ts

@@ -57,14 +57,14 @@ updateParams();
 let updateNeedReload = true;
 export const preventReload = () => {
   updateNeedReload = false;
-  setTimeout(() => (updateNeedReload = true));
+  setTimeout(() => (updateNeedReload = true), 160);
 };
 watch(
   () => ({ ...params.value }),
   (nParams, oParams) => {
     const sParams = new URLSearchParams();
     for (const key in params.value) {
-      params.value[key] && sParams.append(key, params.value[key]);
+      sParams.append(key, params.value[key]);
     }
     const ndx = location.hash.indexOf("?");
     const path =

+ 50 - 2
src/example/fuse/enter-exe.ts

@@ -1,6 +1,7 @@
 import { tempStrFill } from "@/utils/shared";
 import { params } from "../env";
 import { postFile, resourceURLS, SCENE_TYPE, viewURLS } from "./enter-shared";
+import { genLoading } from "../loadding";
 
 let load: Promise<any>;
 if (import.meta.env.VITE_ORIGIN === "params") {
@@ -18,13 +19,13 @@ viewURLS[SCENE_TYPE.mesh] = tempStrFill(viewURLS[SCENE_TYPE.mesh], {
 load.then((p) => {
   window.platform.preventLogin = true;
 
-  window.platform.uploadResourse = async (file: File) => {
+  window.platform.uploadResourse = genLoading(async (file: File) => {
     const url = await postFile(`fusion/upload/file`, { file });
     if (url.includes("//")) {
       return url;
     }
     return `${url}`;
-  };
+  });
   window.platform.getResource = (url: string) => {
     if (url.includes("//")) {
       return url;
@@ -32,4 +33,51 @@ load.then((p) => {
       return `${resourceURLS.oss}${url}`;
     }
   };
+
+  const placeKey = '{{--oss--}}'
+  const getOverviewDataRaw = window.platform.getOverviewData
+  window.platform.getOverviewData = async (...args: any[]) => {
+    const result = await getOverviewDataRaw(...args)
+    try { 
+      const dataStr = JSON.stringify(result.store).split(placeKey).join(resourceURLS.oss)
+      result.store = JSON.parse(dataStr)
+    } catch (e) {
+      console.error('替换失败', e)
+    }
+    return result
+  }
+
+  const saveOverviewDataRaw = window.platform.saveOverviewData
+  window.platform.saveOverviewData = async (...args: any[]) => {
+    try {
+      args[1].store = JSON.parse(JSON.stringify(args[1].store).split(resourceURLS.oss).join(placeKey))
+    } catch(e) {
+      console.error('替换出错', e)
+    }
+    const result = await saveOverviewDataRaw(...args)
+    return result
+  }
+
+  const getTabulationDataRaw = window.platform.getTabulationData
+  window.platform.getTabulationData = async (...args: any[]) => {
+    const result = await getTabulationDataRaw(...args)
+    try { 
+      const dataStr = JSON.stringify(result.store).split(placeKey).join(resourceURLS.oss)
+      result.store = JSON.parse(dataStr)
+    } catch (e) {
+      console.error('替换失败', e)
+    }
+    return result
+  }
+
+  const saveTabulationDataRaw = window.platform.saveTabulationData
+  window.platform.saveTabulationData = async (...args: any[]) => {
+    try {
+      args[1].store = JSON.parse(JSON.stringify(args[1].store).split(resourceURLS.oss).join(placeKey))
+    } catch(e) {
+      console.error('替换出错', e)
+    }
+    const result = await saveTabulationDataRaw(...args)
+    return result
+  }
 });

+ 7 - 1
src/example/fuse/enter-shared.ts

@@ -323,7 +323,13 @@ export const saveTabulationData = genLoading(
 );
 
 export const uploadResourse = genLoading(
-  async (file: File) => await postFile(`fusion/upload/file`, { file })
+  async (file: File) => {
+    try {
+      await postFile(`fusion/upload/file`, { file })
+    } catch (e) {
+      throw e
+    }
+  }
 );
 
 export const getResource = (url: string) => {

+ 1 - 0
src/example/fuse/views/overview/header.vue

@@ -279,6 +279,7 @@ const saveHandler = repeatedlyOnly(async () => {
   if (!tabBlob || !listBlob || !kkBlob) {
     ElMessage.error("截图保存失败");
   } else {
+    console.error(window.platform.uploadResourse);
     [tabUrl, listUrl, kankanUrl] = await Promise.all([
       window.platform.uploadResourse(new File([tabBlob], `tabulation-cover.png`)),
       window.platform.uploadResourse(new File([listBlob], `list-cover.png`)),

+ 1 - 0
src/example/loadding.ts

@@ -29,6 +29,7 @@ export const loading = <T, K extends PFN<T>>(
   const token = onlyId()
   tokens.push(token)
 
+  console.log('开始请求')
   const ret = typeof fn === "function" ? fn() : fn;
   ret
     .catch((e) => {