关于使用 react-sortable-hoc 拖动时丢失拖拽元素的样式

在使用Less进行开发时,遇到拖动元素后其与父类样式断开连接的问题。为恢复元素的造型,文章建议将样式定义在全局,以确保元素始终保持正确的样式应用,即使在脱离父类上下文时也能保持一致的外观。

使用less样式嵌套

在拖动项目时,该元素不再链接到父类,而是父类之外的单独元素。因此它失去了所有的造型!

因此为了解决这个问题,我们可以像这样把元素样式定义在全局

react-sortable-hoc 是一个基于 React 的组件,也是用于创建可拖拽、可排序列表的高阶组件库,可帮助用户在 React 应用中轻松实现拖放排序功能。它提供了一组高阶组件,允许用户轻松地将任何列表转化为可拖放排序的组件,只需简单地包装现有的组件即可。借助其配置选项和示例代码,能够快速上手并集成到自己的 React 项目中。使用 react-sortable-hoc 可以让应用更具交互性,让用户能够轻松地对项目进排序。该库支持水平和垂直列表,以及网格布局,并且提供了平滑的动画效果。它与虚拟化库(如 react-virtualized、react-tiny-virtual-list、react-infinite 等)兼容,支持触摸操作和键盘排序,非常适合需要拖拽排序功能的 React 应用 [^1][^2][^4]。 以下是一个简单的使用示例: ```jsx import React, { useState } from 'react'; import { SortableContainer, SortableElement } from 'react-sortable-hoc'; import arrayMove from 'array-move'; // 创建可排序的元素 const SortableItem = SortableElement(({ value }) => <li>{value}</li>); // 创建可排序的容器 const SortableList = SortableContainer(({ items }) => { return ( <ul> {items.map((value, index) => ( <SortableItem key={`item-${index}`} index={index} value={value} /> ))} </ul> ); }); const App = () => { const [items, setItems] = useState(['Item 1', 'Item 2', 'Item 3', 'Item 4']); const onSortEnd = ({ oldIndex, newIndex }) => { setItems(arrayMove(items, oldIndex, newIndex)); }; return ( <div> <SortableList items={items} onSortEnd={onSortEnd} /> </div> ); }; export default App; ```
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值