首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我看不到使用React-dnd拖动的项目

我看不到使用React-dnd拖动的项目
EN

Stack Overflow用户
提问于 2020-04-01 05:31:56
回答 1查看 1.6K关注 0票数 4

所以基本上,当我使用html5后端时,一切都很好,但由于我的应用程序也将在手机上使用,我需要切换到touch后端。当我这样做的时候,一切都很好,除了我看不到我正在拖动的项目。Drop area接受项目,改变类和一切,但我就是看不到这个该死的东西,不是在pc上,也不是在移动设备上。我试过使用DragPreviewImage,当切换到html5backend时,它可以工作,但没有触摸屏。

拖动组件:

代码语言:javascript
复制
const [{isDragging}, drag] = useDrag({
    item: {
        type:ItemTypes.CARD,
        name: props.person,
        id: props.id
    },
    collect: monitor => ({
        isDragging: !!monitor.isDragging(),
      }),
})


return (
    <div
    ref={drag}
    className={`${props.classNameToDisplay} ${isDragging ? 'onDrag' : ""}`}
    id={props.id}
    key={props.person}
    onClick={(e) => props.itemOnClick(e, props.person, props.itemClicked)}>
    {props.person}
</div>
);

删除输入组件:

代码语言:javascript
复制
const DropInput = (props) => {

const[{isOver, canDrop}, drop] = useDrop({
    accept:ItemTypes.CARD,
    canDrop:(item, monitor) => true,
    drop: (item, monitor) => props.itemOnDrop(item,monitor, "regularBet", props.itemClicked),
    collect: monitor => ({
        isOver : !!monitor.isOver(),
        canDrop : !!monitor.canDrop()
    })
})

return (
    <input
    ref={drop}
    className={`${props.classNameToDisplay} ${isOver && canDrop ? 'onDropAllowed' : ''} `}
    onKeyUp={e => props.itemOnKeyUp(e, props.itemClicked)} 
    onChange={e => props.itemOnChange(e, 'name')}
    type="text"
    name={props.itemClicked}
    id={props.itemClicked}
    value={props.itemName}
    placeholder="ime"/>
);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-18 06:09:36

在自己花了一个小时左右的时间尝试解决这个问题后,我找到了适合我的情况的react-dnd-preview。希望这对你也有效。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60960230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档