莫方教程网

专业程序员编程教程与实战案例分享

Atlassian开源拖拽组件:强性能、广兼容,跨窗拖动,适配全框架

Pragmatic drag and drop 是一款前端拖拽组件,由知名软件开发公司 Atlassian 开源。

正如名字中的 Pragmatic(“实用”)所言,该组件支持许多拖拽场景,十分注重性能,并且通过使用浏览器强大而灵活的内置拖拽功能变得安全而简单。

目前 Atlassian 公司旗下核心产品 Trello、Jira 和 Confluence 等均使用了 Pragmatic drag and drop。

在 Pragmatic drag and drop 之前,该组件作者 Alex Reardon 还打造了另一款流行的 React 开源拖拽组件 react-beautiful-dnd

与之相比,Pragmatic drag and drop 支持了更多的拖拽场景:

  • 列表
  • 面板
  • 表格
  • Grids
  • Drawing
  • Resizing

下图展示了 Pragmatic Drag and Drop 在不同场景的运行效果:

Pragmatic drag and drop 还支持在任何前端框架(如 React、Svelte、Vue、Angular)中使用,不受特定技术栈的限制。

在不同框架中使用的写法如下:

  • React
  • Svelte
  • JS

对比其他同类型的开源拖拽组件,Pragmaticdrag and drop 核心包经过压缩后更加轻量,仅 4.7kb。

性能方面,对比以下同类型开源框架:

  • react-beautiful-dnd
  • react-dnd
  • dnd-kit

Pragmaticdrag and drop 的 TTI 指标可谓是“遥遥领先”。

TTI: Time to Interactive,可交互时间。该指标主要用于测量页面从开始加载到主要子资源完成渲染,并能够快速、可靠地响应用户输入所需要的时间。



Pragmaticdrag and drop 正式开源仅两周,目前已在 GitHub 拿到了 3.5k+ star。

详情查看
https://github.com/atlassian/pragmatic-drag-and-drop

References

https://www.youtube.com/watch?v=5SQkOyzZLHM

https://atlassian.design/components/pragmatic-drag-and-drop/about

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言