@@ -15,9 +15,9 @@ import {
1515 Pressable ,
1616} from 'react-native' ;
1717
18- export interface PickerDate {
18+ export interface PickerData {
1919 label ?: string ;
20- render ?: ( key : string , record : PickerDate , index : number ) => React . ReactNode ;
20+ render ?: ( key : string , record : PickerData , index : number ) => React . ReactNode ;
2121 [ key : string ] : any ;
2222}
2323
@@ -27,7 +27,7 @@ export interface PickerProps {
2727 /** 指定需要显示的 key, 默认使用 data 的 label 属性 */
2828 key ?: string ;
2929 /** 需要渲染的数据 */
30- date ?: Array < PickerDate > ;
30+ data ?: Array < PickerData > ;
3131 /** item 容器样式 */
3232 containerStyle ?: {
3333 /** 激活的容器样式 */
@@ -52,7 +52,7 @@ const Picker = (props: PickerProps) => {
5252 const {
5353 lines = 3 ,
5454 key = 'label' ,
55- date = new Array < PickerDate > ( ) ,
55+ data = new Array < PickerData > ( ) ,
5656 containerStyle = { } ,
5757 textStyle = { } ,
5858 value = 0 ,
@@ -70,10 +70,13 @@ const Picker = (props: PickerProps) => {
7070 useEffect ( ( ) => {
7171 onChange ?.( current ) ;
7272 onPressORonScroll . current = 'onScroll' ;
73+ clearTimeout ( timer . current ! ) ;
74+ timer . current = undefined ;
75+ clearTimeout ( onPressTimer . current ! ) ;
7376 } , [ current ] ) ;
7477 useEffect ( ( ) => {
7578 if ( value !== current ) {
76- let leng = value > date . length - 1 ? date . length - 1 : value ;
79+ let leng = value > data . length - 1 ? data . length - 1 : value ;
7780 leng = leng < 0 ? 0 : leng ;
7881 location ( ( style . containerHeight as number ) * ( leng + 1 ) , leng ) ;
7982 setCurrent ( leng ) ;
@@ -162,7 +165,7 @@ const Picker = (props: PickerProps) => {
162165 useNativeDriver : false ,
163166 } ) }
164167 >
165- { date . map ( ( item , index ) => (
168+ { data . map ( ( item , index ) => (
166169 < Pressable
167170 onLayout = { getItemHeight }
168171 key = { index }
0 commit comments