소스 검색

优化URL第二次跳转逻辑

tianyunperfect 4 년 전
부모
커밋
a988d2cf07
1개의 변경된 파일18개의 추가작업 그리고 11개의 파일을 삭제
  1. 18 11
      src/pages/Memory/index.tsx

+ 18 - 11
src/pages/Memory/index.tsx

@@ -198,15 +198,22 @@ const TableList: React.FC<{}> = () => {
   }
   // 检测是否应该自动跳转
   const checkGotoUrl = () => {
-    if (memory.onlyText.trim().toLowerCase().startsWith("墱墧墡") && localStorage.getItem("auto-url") !== memory.id + "") {
-      setTimeout(() => {
-        localStorage.setItem("auto-url", memory.id + "");
-        let a = document.querySelector(".ql-editor a");
-        if (a) {
-          // @ts-ignore
-          a.click()
-        }
-      }, 1000);
+    // 如果是URL
+    if (memory.onlyText.trim().toLowerCase().startsWith("墱墧墡")) {
+      // 需要跳转
+      if (localStorage.getItem("auto-url") !== memory.id + "") {
+        setTimeout(() => {
+          localStorage.setItem("auto-url", memory.id + "");
+          let a = document.querySelector(".ql-editor a");
+          if (a) {
+            // @ts-ignore
+            a.click()
+          }
+        }, 1000);
+      } else {
+        // 已经跳转过,就可以直接点击
+        setBtnDisable(false);
+      }
 
     }
   }
@@ -233,12 +240,13 @@ const TableList: React.FC<{}> = () => {
 
   useEffect(() => {
     setRefresh(false);
+    setBtnDisable(true);
     // 判断是否为主页面刷新
     if (memory.front.length === 0) {
       return;
     }
     // 检测是否需要跳转
-    checkGotoUrl()
+    checkGotoUrl();
     // 进入复习页面后
     // 如果没有文字,并且也没有图片
     if (isBackEmpty()) {
@@ -250,7 +258,6 @@ const TableList: React.FC<{}> = () => {
     /**
      * 按钮3秒才能点击
      */
-    setBtnDisable(true);
     setTimeout(() => {
       setBtnDisable(false); // 按钮可点
     }, 3000);