awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
react-dnd avatar

react-dnd/react-dnd

0
View on GitHub↗
21,641 星标·1,999 分支·TypeScript·MIT·9 次浏览react-dnd.github.io/react-dnd↗

React Dnd

React DnD is a library for building complex drag-and-drop interfaces within React applications. It provides a declarative, component-based architecture that abstracts native browser drag-and-drop APIs, allowing developers to manage state and interactions between draggable sources and drop targets.

The library utilizes a dependency injection backend to decouple interaction logic from specific input methods, supporting mouse, touch, and native browser events through a unified normalization layer. It employs a registry pattern to track active drop zones and a monitor pattern to observe the lifecycle of drag operations, ensuring that state changes and element coordinates are propagated across the component tree via context.

These capabilities enable the creation of custom interfaces for dynamic content reordering and item organization. The framework manages the underlying state transitions and visual feedback requirements necessary for responsive user interactions.

Features

  • Drag and Drop Libraries - Provides a comprehensive set of React hooks for building complex drag-and-drop interfaces.
  • Declarative Drag-and-Drop Libraries - Abstracts native browser drag-and-drop APIs into a declarative, component-based architecture.
  • List Reordering Components - Enables real-time rearrangement of list and grid items through direct user manipulation.
  • Drag and Drop Interactions - Captures interaction events between sources and targets to update element positions dynamically.
  • Drag State Monitors - Tracks drag progress and element coordinates to provide real-time visual feedback.
  • Interaction Toolkits - Provides a toolkit for creating custom drag-and-drop behaviors with real-time coordinate tracking.
  • Event Normalizers - Normalizes native browser drag-and-drop events into a consistent internal format across different platforms.
  • Dependency Injection - Decouples interaction logic from input methods using dependency injection for swappable event drivers.
  • Context State Propagators - Propagates drag-and-drop state across the component tree using context providers.
  • Interaction Handlers - Manages complex state transitions and visual feedback for components responding to mouse or touch gestures.

Star 历史

react-dnd/react-dnd 的 Star 历史图表react-dnd/react-dnd 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

React Dnd 的开源替代方案

相似的开源项目,按与 React Dnd 的功能重合度排序。
  • gaearon/react-dndgaearon 的头像

    gaearon/react-dnd

    21,642在 GitHub 上查看↗

    React-dnd is a drag and drop framework and library for React applications. It provides a system of higher-order components and hooks to implement draggable interface elements and drop targets using a declarative API. The framework separates the logic of moving items from the visual presentation of the user interface. This allows for the development of interactive interfaces, such as visual list reordering and custom dashboard layouts where widgets or panels can be reorganized.

    TypeScript
    在 GitHub 上查看↗21,642
  • bevacqua/dragulabevacqua 的头像

    bevacqua/dragula

    22,160在 GitHub 上查看↗

    Dragula is a JavaScript drag and drop library and DOM element manipulator used to move and reorder HTML elements between multiple containers. It functions as a UI interaction framework and event manager that tracks drag lifecycles to facilitate the movement of elements within a web browser interface. The library distinguishes itself through configurable constraint validation, allowing developers to define which elements are draggable and which containers are permitted drop targets. It supports specialized interaction patterns such as element cloning, the use of specific drag handles to restri

    JavaScriptcomponentdrag-and-dropdrag-drop
    在 GitHub 上查看↗22,160
  • clauderic/dnd-kitclauderic 的头像

    clauderic/dnd-kit

    17,243在 GitHub 上查看↗

    This project is a modular toolkit for building accessible, component-based drag-and-drop interfaces in React. It provides a foundational framework for managing complex spatial interactions, state synchronization, and element registration, allowing developers to create interactive web applications that support mouse, touch, and keyboard inputs. The library distinguishes itself through a highly extensible architecture that separates input handling from interaction logic. It utilizes a sensor-based input abstraction to normalize diverse user interactions and a plugin-driven lifecycle to inject c

    TypeScriptdragdrag-and-dropdraggable
    在 GitHub 上查看↗17,243
  • sortablejs/vue.draggableSortableJS 的头像

    SortableJS/Vue.Draggable

    20,626在 GitHub 上查看↗

    Vue.Draggable is a component-based library for Vue.js that enables drag-and-drop functionality within web interfaces. It functions as a wrapper for the SortableJS engine, bridging the gap between imperative DOM manipulation and the declarative nature of the Vue.js reactive system. By synchronizing user interface interactions with the underlying data model, it ensures that list reordering and element movement are automatically reflected in the application state. The library supports complex interaction patterns, including the ability to move items between lists, clone elements using keyboard m

    JavaScriptcomponentdrag-and-dropvue
    在 GitHub 上查看↗20,626
查看 React Dnd 的所有 30 个替代方案→

常见问题解答

react-dnd/react-dnd 是做什么的?

React DnD is a library for building complex drag-and-drop interfaces within React applications. It provides a declarative, component-based architecture that abstracts native browser drag-and-drop APIs, allowing developers to manage state and interactions between draggable sources and drop targets.

react-dnd/react-dnd 的主要功能有哪些?

react-dnd/react-dnd 的主要功能包括:Drag and Drop Libraries, Declarative Drag-and-Drop Libraries, List Reordering Components, Drag and Drop Interactions, Drag State Monitors, Interaction Toolkits, Event Normalizers, Dependency Injection。

react-dnd/react-dnd 有哪些开源替代品?

react-dnd/react-dnd 的开源替代品包括: gaearon/react-dnd — React-dnd is a drag and drop framework and library for React applications. It provides a system of higher-order… bevacqua/dragula — Dragula is a JavaScript drag and drop library and DOM element manipulator used to move and reorder HTML elements… clauderic/dnd-kit — This project is a modular toolkit for building accessible, component-based drag-and-drop interfaces in React. It… sortablejs/vue.draggable — Vue.Draggable is a component-based library for Vue.js that enables drag-and-drop functionality within web interfaces.… sortablejs/sortable — Sortable is a framework-agnostic JavaScript library for creating reorderable lists through drag and drop interactions.… rubaxa/sortable — Sortable is a JavaScript drag and drop library used to create reorderable lists of HTML elements. It is a…