Browse Source

添加复习状态记录

tianyunperfect 4 years ago
parent
commit
e3dcac4577
1 changed files with 57 additions and 32 deletions
  1. 57 32
      src/pages/Memory/index.tsx

+ 57 - 32
src/pages/Memory/index.tsx

@@ -56,6 +56,22 @@ const TableList: React.FC<{}> = () => {
     // @ts-ignore
     return document.activeElement.id === practice;
   }
+  /**
+   * 设置复习状态,对手机端返回页面的时候有用
+   */
+  const setMemeory=()=>{
+     localStorage.setItem("memory",'1');
+  }
+  const checkMemeory=()=>{
+    if (localStorage.getItem("memory") === '1') {
+      setState({step: Step.MEMORY});
+    } else {
+      countRemind();
+    }
+  }
+  const removeMemeory=()=>{
+    localStorage.removeItem("memory");
+  }
 
   /**
    * 查询用户待提醒数量
@@ -104,6 +120,7 @@ const TableList: React.FC<{}> = () => {
       setMemory({...memory, ...res.data});
     } else {
       setState({step: Step.MAIN});
+      removeMemeory();
     }
   };
 
@@ -116,8 +133,10 @@ const TableList: React.FC<{}> = () => {
     const res = await service.findNext({});
     if (res.success) {
       setMemory({...memory, ...res.data});
+      setMemeory();
     } else {
       setState({step: Step.MAIN});
+      removeMemeory();
     }
   };
 
@@ -176,7 +195,7 @@ const TableList: React.FC<{}> = () => {
   }
 
   useEffect(() => {
-    countRemind();
+    checkMemeory();
     setTimeout(() => {
       countRemind();
     }, 1000 * 60 * 60); // 每隔一个小时查询一次
@@ -190,7 +209,7 @@ const TableList: React.FC<{}> = () => {
 
     if (state.step === Step.MAIN) {
       // 进入统计页面
-      countRemind();
+      checkMemeory();
     } else if (state.step === Step.MEMORY) {
       findNextLine();
     }
@@ -283,12 +302,11 @@ const TableList: React.FC<{}> = () => {
 
                 <Button
                   type="primary"
-                  disabled={btnDisable}
                   onClick={() => {
-                    memorySuccess(3);
+                    setState({step: Step.MAIN});
                   }}
                 >
-                  简单
+                  关闭
                 </Button>
 
                 <Button
@@ -302,15 +320,15 @@ const TableList: React.FC<{}> = () => {
                 {showMore ? (
                   <div>
                     <div>
+
                       <Button
                         type="primary"
                         disabled={btnDisable}
-                        onClick={async () => {
-                          setBtnDisable(true);
-                          memoryRes(await service.delay(memory));
+                        onClick={() => {
+                          memorySuccess(3);
                         }}
                       >
-                        搁置
+                        简单
                       </Button>
 
                       <Button
@@ -318,34 +336,21 @@ const TableList: React.FC<{}> = () => {
                         disabled={btnDisable}
                         onClick={async () => {
                           setBtnDisable(true);
-                          memoryRes(await service.restart(memory));
+                          memoryRes(await service.delay(memory));
                         }}
                       >
-                        重新复习
+                        搁置
                       </Button>
 
                       <Button
                         type="primary"
                         disabled={btnDisable}
                         onClick={async () => {
-                          confirm({
-                            title: '确定删除吗?',
-                            icon: <ExclamationCircleOutlined/>,
-                            content: '删除后无法恢复',
-                            okText: '确定',
-                            okType: 'danger',
-                            cancelText: '取消',
-                            async onOk() {
-                              setBtnDisable(true);
-                              memoryRes(await service.delete(memory));
-                            },
-                            onCancel() {
-                              console.log('Cancel');
-                            },
-                          });
+                          setBtnDisable(true);
+                          memoryRes(await service.noMemory(memory));
                         }}
                       >
-                        删除
+                        不再复习
                       </Button>
 
                       <Button
@@ -353,11 +358,15 @@ const TableList: React.FC<{}> = () => {
                         disabled={btnDisable}
                         onClick={async () => {
                           setBtnDisable(true);
-                          memoryRes(await service.noMemory(memory));
+                          memoryRes(await service.restart(memory));
                         }}
                       >
-                        不再复习
+                        重新复习
                       </Button>
+
+
+
+
                     </div>
                     <div>
                       <Button
@@ -371,12 +380,28 @@ const TableList: React.FC<{}> = () => {
 
                       <Button
                         type="primary"
-                        onClick={() => {
-                          setState({step: Step.MAIN});
+                        disabled={btnDisable}
+                        onClick={async () => {
+                          confirm({
+                            title: '确定删除吗?',
+                            icon: <ExclamationCircleOutlined/>,
+                            content: '删除后无法恢复',
+                            okText: '确定',
+                            okType: 'danger',
+                            cancelText: '取消',
+                            async onOk() {
+                              setBtnDisable(true);
+                              memoryRes(await service.delete(memory));
+                            },
+                            onCancel() {
+                              console.log('Cancel');
+                            },
+                          });
                         }}
                       >
-                        关闭
+                        删除
                       </Button>
+
                     </div>
                   </div>
                 ) : null}