|
@@ -14,7 +14,7 @@ export default React.forwardRef((props, ref) => {
|
14
|
14
|
onDataChange,
|
15
|
15
|
noData,
|
16
|
16
|
className,
|
17
|
|
- refres,
|
|
17
|
+ refres,//刷新复位
|
18
|
18
|
refresherEnabled,
|
19
|
19
|
...leftProps
|
20
|
20
|
} = props
|
|
@@ -36,6 +36,10 @@ export default React.forwardRef((props, ref) => {
|
36
|
36
|
}
|
37
|
37
|
}
|
38
|
38
|
|
|
39
|
+ const loadingOff = () => {
|
|
40
|
+ refres()
|
|
41
|
+ }
|
|
42
|
+
|
39
|
43
|
const fetchList = () => {
|
40
|
44
|
if (!request) return;
|
41
|
45
|
|
|
@@ -88,51 +92,23 @@ export default React.forwardRef((props, ref) => {
|
88
|
92
|
}).exec()
|
89
|
93
|
})
|
90
|
94
|
}, [])
|
91
|
|
- const getList = () => {
|
92
|
|
- request({
|
93
|
|
- ...params,
|
94
|
|
- pageSize,
|
95
|
|
- pageNum: pageRef.current.current
|
96
|
|
- }).then((res) => {
|
97
|
|
- const { records, ...pageInfo } = res || {}
|
98
|
|
- const lst = pageInfo.current === 1 ? records || [] : list.concat(records || [])
|
99
|
|
- setList(lst)
|
100
|
|
- setHasMore(pageInfo.current < pageInfo.pages)
|
101
|
|
-
|
102
|
|
- if (onDataChange) {
|
103
|
|
- onDataChange(lst, { paramsChanged: pageInfo.current === 1 })
|
104
|
|
- }
|
105
|
95
|
|
106
|
|
-
|
107
|
|
- pageRef.current = pageInfo
|
108
|
|
- setLoading(false)
|
109
|
|
- refres()
|
110
|
|
-
|
111
|
|
-
|
112
|
|
- }).catch((err) => {
|
113
|
|
- console.error(err)
|
114
|
|
- setLoading(false)
|
115
|
|
- refres()
|
116
|
|
-
|
117
|
|
- if (onError) {
|
118
|
|
- onError(err)
|
119
|
|
- }
|
120
|
|
- })
|
121
|
|
-
|
122
|
|
- }
|
123
|
96
|
// https://developers.weixin.qq.com/miniprogram/dev/api/ui/scroll/ScrollViewContext.html
|
124
|
97
|
// ScrollViewContext 透传给父组件
|
125
|
98
|
//https://zh-hans.reactjs.org/docs/hooks-reference.html#useimperativehandle
|
126
|
99
|
useImperativeHandle(ref, () => ({
|
127
|
100
|
context: contextRef.current,
|
128
|
101
|
}))
|
|
102
|
+
|
|
103
|
+
|
129
|
104
|
return (
|
130
|
105
|
<ScrollView
|
131
|
106
|
{...leftProps}
|
132
|
107
|
scrollY
|
133
|
108
|
enhanced
|
134
|
109
|
refresherEnabled={refresherEnabled}
|
135
|
|
- onRefresherrefresh={getList}
|
|
110
|
+
|
|
111
|
+ onRefresherrefresh={fetchRef.current = fetchList}
|
136
|
112
|
onScrollToLower={handleScrollToLower}
|
137
|
113
|
className={`${className} ${uqCls} list-view`}
|
138
|
114
|
>
|