1
- /* eslint-disable */
2
1
import React , {
3
2
useRef ,
4
3
useState ,
5
4
useEffect ,
6
5
useLayoutEffect ,
7
6
useCallback ,
8
7
useMemo ,
9
- Fragment ,
10
- } from 'react' ;
11
- import classNames from 'classnames' ;
12
- import StartUpPage from '../../startPage' ;
13
- import Button from '@material-ui/core/Button' ;
14
- import styles from './index.css' ;
15
- import useComicContext from './useComicContext' ;
8
+ } from "react" ;
9
+ import classNames from "classnames" ;
10
+ import StartUpPage from "../../startPage" ;
11
+ import Button from "@material-ui/core/Button" ;
12
+ import styles from "./index.css" ;
13
+ import useComicContext from "./useComicContext" ;
16
14
17
15
// onVisitPosition: 当对应图片露出时调用,用来记录看到的位置
18
- function ImgList ( { onNextPage, hasNextPage, imgList, onVisitPosition} ) {
19
- const { filter, autoScroll, setAutoScroll , comic } = useComicContext ( ) ;
16
+ function ImgList ( { onNextPage, hasNextPage, imgList, onVisitPosition } ) {
17
+ const { filter, autoScroll, comic } = useComicContext ( ) ;
20
18
/* 只有首次初始化ImgList时才自动定位到comic.position位置*/
21
19
const firstElePosition = useMemo ( ( ) => {
22
20
if ( Number . isInteger ( comic . position ) && comic . position ) {
@@ -42,31 +40,35 @@ function ImgList({ onNextPage, hasNextPage, imgList, onVisitPosition}) {
42
40
}
43
41
} ) ;
44
42
45
- document . querySelectorAll ( ' .comic-img' ) . forEach ( ele => {
43
+ document . querySelectorAll ( " .comic-img" ) . forEach ( ( ele ) => {
46
44
observer . observe ( ele ) ;
47
45
} ) ;
48
46
49
47
return ( ) => {
50
48
observer . disconnect ( ) ;
51
- }
52
- }
53
-
54
- return ( ) => {
49
+ } ;
55
50
}
56
51
52
+ return ( ) => { } ;
57
53
} , [ isFirst ] ) ;
58
54
59
- const onImgLoad = useCallback ( ( e ) => {
60
- if ( isFirst && Number ( e . currentTarget . dataset . index ) === firstElePosition ) {
61
- const target = e . currentTarget ;
62
- setTimeout ( ( ) => {
63
- target . scrollIntoView ( ) ;
64
- } , 50 ) ;
65
- setTimeout ( ( ) => {
66
- setIsFirst ( false ) ;
67
- } , 100 ) ;
68
- }
69
- } , [ isFirst ] ) ;
55
+ const onImgLoad = useCallback (
56
+ ( e ) => {
57
+ if (
58
+ isFirst &&
59
+ Number ( e . currentTarget . dataset . index ) === firstElePosition
60
+ ) {
61
+ const target = e . currentTarget ;
62
+ setTimeout ( ( ) => {
63
+ target . scrollIntoView ( ) ;
64
+ } , 50 ) ;
65
+ setTimeout ( ( ) => {
66
+ setIsFirst ( false ) ;
67
+ } , 100 ) ;
68
+ }
69
+ } ,
70
+ [ isFirst ]
71
+ ) ;
70
72
71
73
function renderList ( list ) {
72
74
return list . map ( ( item , index ) => {
@@ -76,7 +78,10 @@ function ImgList({ onNextPage, hasNextPage, imgList, onVisitPosition}) {
76
78
src = { item }
77
79
onLoad = { onImgLoad }
78
80
data-index = { index }
79
- className = { classNames ( 'comic-img' , styles [ `filter-${ filter } ` ] ) }
81
+ className = { classNames (
82
+ "comic-img border-box border border-black" ,
83
+ styles [ `filter-${ filter } ` ]
84
+ ) }
80
85
/>
81
86
) ;
82
87
} ) ;
@@ -164,17 +169,18 @@ function ImgList({ onNextPage, hasNextPage, imgList, onVisitPosition}) {
164
169
} , [ ] ) ;
165
170
166
171
return (
167
- < div
168
- className = { styles . imglist } >
169
- < StartUpPage className = { classNames ( 'z-10' , { '!hidden' : ! isFirst } ) } > </ StartUpPage >
172
+ < div className = { styles . imglist } >
173
+ < StartUpPage
174
+ className = { classNames ( "z-10" , { "!hidden" : ! isFirst } ) }
175
+ > </ StartUpPage >
170
176
{ renderList ( imgList ) }
171
177
{ hasNextPage ? (
172
178
< Button
173
179
onClick = { onClickNextPage }
174
180
className = { styles . nextpagebtn }
175
181
ref = { nextPageBtnRef }
176
182
>
177
- 下一页{ time === 0 ? '' : time }
183
+ 下一页{ time === 0 ? "" : time }
178
184
</ Button >
179
185
) : null }
180
186
</ div >
0 commit comments