我在 ReactNative 中使用 react-native-draggable-flatlist。我对 FlatList 的引用感兴趣,以便可以对其执行 scrollToIndex 。使用以下代码:
import React, {
useEffect, createRef, useRef,
} from 'react'
import { ScrollView, FlatList } from 'react-native-gesture-handler'
import DraggableFlatList, {
RenderItemParams, DragEndParams,
} from "react-native-draggable-flatlist"
export default function TasksList(props: Props) {
const ref = createRef<DraggableFlatList<ITask>>()
const flatListRef = useRef<FlatList<ITask> | null>(null)
return (
<DraggableFlatList
ref={ref}
onRef={flatListRef}
...
)
}
我收到以下打字稿错误:
类型 'MutableRefObject<(ComponentClass<FlatListProps & NativeViewGestureHandlerProps & RefAttributes, any> & { ...; }) | (函数组件<...> & { ...; }) | null>' 不可分配给类型 '(ref: RefObject<FlatList>) => void'。类型 'MutableRefObject<(ComponentClass<FlatListProps & NativeViewGestureHandlerProps & RefAttributes, any> & { ...; }) | (函数组件<...> & { ...; }) | null>' 不匹配签名 '(ref: RefObject<FlatList>): void'。预期的类型来自属性 'onRef',它在类型 'IntrinsicAttributes & IntrinsicClassAttributes<DraggableFlatList> & Pick<Readonly<Modify<FlatListProps, { ...; } & 部分<...>>> & 只读<...>, "ItemSeparatorComponent" | ... 150 更多 ... | “孩子”> & 部分<...> & 部分<...>'
如何修复错误以便我可以使用 ref/onRef?