微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在使用 react-dnd 的 react typescript 中使用 useDrag({}) 方法时出错

如何解决在使用 react-dnd 的 react typescript 中使用 useDrag({}) 方法时出错

import { useEffect } from 'react';
import { useDrag,useDrop } from 'react-dnd';
import { getEmptyImage } from 'react-dnd-html5-backend';
import { useAppState } from '../AppStateContext';
import { DragItem } from '../DragItem';
export const useItemDrag = (item: DragItem) => {
  const { dispatch } = useAppState();
  const [,drag,preview] = useDrag({
    item,begin: () => dispatch({ type: 'SET_DRAGGED_ITEM',payload: item }),end: () => dispatch({ type: 'SET_DRAGGED_ITEM',payload: undefined }),});
  useEffect(() => {
    preview(getEmptyImage(),{ captureDraggingState: true });
  },[preview]);
  return { drag };
};

react-dnd issue images here with error message

在 useDrag 上得到这个错误

Argument of type '{ item: DragItem; begin: () => any; end: () => any; }' is not assignable to parameter of type 'FactoryOrInstance<DragSourceHookSpec<unkNown,unkNown,any>>'.

对象字面量只能指定已知属性,并且在类型“FactoryOrInstance>”中不存在“begin”

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。