浏览代码

smoth scroll

amenpunk 2 年之前
父节点
当前提交
39cd779c26
共有 2 个文件被更改,包括 7 次插入12 次删除
  1. 1 0
      package.json
  2. 6 12
      src/Pages/Pruebas/Cleaver.jsx

+ 1 - 0
package.json

33
         "react-router": "6.2.1",
33
         "react-router": "6.2.1",
34
         "react-router-dom": "6.2.1",
34
         "react-router-dom": "6.2.1",
35
         "react-scripts": "^5.0.0",
35
         "react-scripts": "^5.0.0",
36
+        "react-scroll": "^1.8.7",
36
         "web-vitals": "^1.0.1",
37
         "web-vitals": "^1.0.1",
37
         "yup": "^0.32.11"
38
         "yup": "^0.32.11"
38
     },
39
     },

+ 6 - 12
src/Pages/Pruebas/Cleaver.jsx

9
 import Collapse from '@mui/material/Collapse';
9
 import Collapse from '@mui/material/Collapse';
10
 import List from '@mui/material/List';
10
 import List from '@mui/material/List';
11
 import { TransitionGroup } from 'react-transition-group';
11
 import { TransitionGroup } from 'react-transition-group';
12
+import * as Scroll from 'react-scroll';
12
 
13
 
13
 export function Cleaver() {
14
 export function Cleaver() {
14
 
15
 
16
+var scroll = Scroll.animateScroll;
17
+
15
   let auth = useAuth();
18
   let auth = useAuth();
16
   let token = useMemo(() => auth.getToken(), [auth])
19
   let token = useMemo(() => auth.getToken(), [auth])
17
 
20
 
30
   }, [token]);
33
   }, [token]);
31
 
34
 
32
   const handleAddQuestion = () => {
35
   const handleAddQuestion = () => {
36
+    let op = { smooth: true, duration: 200, delay :1, offset :900}
37
+    scroll.scrollToBottom(op);
33
     let currentAnswer  = totalRespondidas[totalRespondidas.length - 1];
38
     let currentAnswer  = totalRespondidas[totalRespondidas.length - 1];
34
     const nextHiddenItem = totalPreguntas.filter(({id}) => id !== currentAnswer.id );
39
     const nextHiddenItem = totalPreguntas.filter(({id}) => id !== currentAnswer.id );
35
     if (nextHiddenItem) {
40
     if (nextHiddenItem) {
36
       setPreguntas(nextHiddenItem);
41
       setPreguntas(nextHiddenItem);
37
       let temp = nextHiddenItem.shift()
42
       let temp = nextHiddenItem.shift()
38
       setRespondidas([...totalRespondidas,temp]);
43
       setRespondidas([...totalRespondidas,temp]);
39
-      console.log('RESPONDIDAS: ', totalRespondidas)
40
-      scrollToBottom();
41
     }
44
     }
42
   };
45
   };
43
   
46
   
44
-  let last = useRef(null)
45
 
47
 
46
-const scrollToBottom = () => {
47
-    if(last.current){
48
-      last.current.scrollIntoView()
49
-    }
50
-  }
48
+var scroll = Scroll.animateScroll;
51
 
49
 
52
-  // useEffect(() => {
53
-    // scrollToBottom()
54
-  // }, [totalRespondidas]);
55
 
50
 
56
   return (
51
   return (
57
 
52
 
71
         </Box>
66
         </Box>
72
 
67
 
73
       <Button
68
       <Button
74
-        ref={last}
75
         variant="contained"
69
         variant="contained"
76
         disabled={totalRespondidas.length >= totalPreguntas.length}
70
         disabled={totalRespondidas.length >= totalPreguntas.length}
77
         onClick={handleAddQuestion}
71
         onClick={handleAddQuestion}