@@ -16,35 +16,40 @@ import LoadingIndicator from "../../components/LoadingIndicator";
16
16
import { useDebounce } from "react-use" ;
17
17
import { TEAMS_PER_PAGE } from "constants" ;
18
18
import "./styles.module.scss" ;
19
+ import { INPUT_DEBOUNCE_DELAY } from "constants/" ;
19
20
20
21
const MyTeamsList = ( ) => {
21
22
let [ myTeams , setMyTeams ] = useState ( null ) ;
22
- const [ filter , setFilter ] = useState ( "" ) ;
23
- const [ tempFilter , setTempFilter ] = React . useState ( '' ) ;
23
+ const [ debouncedFilter , setDebouncedFilter ] = useState ( "" ) ;
24
+ const [ filter , setFilter ] = React . useState ( "" ) ;
24
25
const [ loadingError , setLoadingError ] = useState ( false ) ;
25
26
const [ page , setPage ] = useState ( 1 ) ;
26
27
const [ total , setTotal ] = useState ( 0 ) ;
28
+
27
29
const onFilterChange = ( evt ) => {
28
- setTempFilter ( evt . target . value )
29
- }
30
+ setFilter ( evt . target . value ) ;
31
+ } ;
30
32
31
- useDebounce ( ( value ) => {
32
- console . log ( 'xxxx' , value )
33
- setFilter ( tempFilter ) ;
34
- setPage ( 1 ) ;
35
- } , 200 , [ tempFilter ] ) ;
33
+ useDebounce (
34
+ ( ) => {
35
+ setDebouncedFilter ( filter ) ;
36
+ setPage ( 1 ) ;
37
+ } ,
38
+ INPUT_DEBOUNCE_DELAY ,
39
+ [ filter ]
40
+ ) ;
36
41
37
42
useEffect ( ( ) => {
38
43
setMyTeams ( null ) ;
39
- getMyTeams ( filter , page , TEAMS_PER_PAGE )
44
+ getMyTeams ( debouncedFilter , page , TEAMS_PER_PAGE )
40
45
. then ( ( response ) => {
41
46
setMyTeams ( response . data ) ;
42
47
setTotal ( response . headers [ "x-total" ] ) ;
43
48
} )
44
49
. catch ( ( responseError ) => {
45
50
setLoadingError ( responseError ) ;
46
51
} ) ;
47
- } , [ filter , page ] ) ;
52
+ } , [ debouncedFilter , page ] ) ;
48
53
49
54
const onPageClick = useCallback (
50
55
( newPage ) => {
@@ -65,7 +70,9 @@ const MyTeamsList = () => {
65
70
/>
66
71
}
67
72
/>
68
- { myTeams && myTeams . length === 0 && ( < div styleName = "empty" > No teams found</ div > ) }
73
+ { myTeams && myTeams . length === 0 && (
74
+ < div styleName = "empty" > No teams found</ div >
75
+ ) }
69
76
{ ! myTeams ? (
70
77
< LoadingIndicator error = { loadingError && loadingError . toString ( ) } />
71
78
) : (
0 commit comments