做了N+1个企业项目之后, 我总结了这些React必备插件

徐小夕
• 阅读 1278

为了提高大家开发 React 项目的效率, 笔者结合自己的实际工作经验, 汇总如下React项目常用插件.

1. 状态管理

做了N+1个企业项目之后, 我总结了这些React必备插件

  • Redux JavaScript 状态容器,提供可预测化的状态管理
  • MobX 通过函数响应式编程使得状态管理变得简单和可扩展
  • Redux Thunk Redux的异步处理中间件
  • Redux Saga Redux中间件,用于管理应用程序 Side Effect(副作用,例如异步获取数据,访问浏览器缓存等)
  • Dva 一个基于 reduxredux-saga 的数据流方案

2. UI组件库

做了N+1个企业项目之后, 我总结了这些React必备插件

  • Ant design 基于 Ant Design 设计体系的 React UI 组件库,主要用于研发企业级中后台产品
  • Ant design mobile 基于 Ant Design 设计体系的 React UI 移动端组件库
  • MaterialUI 世界最受欢迎的基于质感设计的React UI
  • React toolbox 一套使用CSS模块功能实现GoogleMaterial Design规范的React组件
  • React Virtualized 一个能渲染大型列表和表格的React解决方案
  • Fabric UI 微软开源的UX框架的集合,用于创建共享代码,设计和交互行为的精美的跨平台应用程序
  • React desktop 基于ReactJavaScript库,旨在将本机桌面体验带入网络,其中包含许多macOS SierraWindows 10组件。react-desktopNW.jsElectron.js完美结合,但是可以在任何JavaScript驱动的项目中使用
  • Zent 有赞 PC 端 WebUI 规范的 React 实现,提供了一整套基础的 UI 组件以及一些常用的业务组件
  • react-icons 基于React封装的丰富的图标库

3. 工具类

做了N+1个企业项目之后, 我总结了这些React必备插件

  • react-copy-to-clipboard 基于React的复制到剪切板组件
  • qrcode.react 基于React的生成二维码的组件
  • nprogress 适用于YouTubeMedium等的顶部进度条组件
  • react-syntax-highlighter 基于React的代码高亮组件
  • react-contextmenu 右键菜单组件
  • emoji-mart 基于React的表情库
  • react-highlight-words 基于React的关键字高亮

4. 数据可视化

做了N+1个企业项目之后, 我总结了这些React必备插件

  • AntV 包含 G2G6F2L7 以及一套完整的图表使用和设计规范, 提供强大的数据可视化需求
  • G2Plot 基于G2封装的开箱即用的可视化组件库
  • recharts 使用ReactD3构建的自定义的图表库
  • Viser 支持多种主流框架的可视化库

5. 动画/动效果

做了N+1个企业项目之后, 我总结了这些React必备插件

  • Halogen 使用React的加载动画集合
  • react-move 漂亮的,数据驱动的React动画,只需3.5kb(gzip)
  • react-spring 一个基于弹簧物理学的动画库
  • Ant Motion 提供了单项,组合动画,以及整套动画解决方案
  • scenejs 基于JavaScriptCSS时间轴的动画库
  • react-text-loop 文字轮播动画

6. 拖拽/排序

做了N+1个企业项目之后, 我总结了这些React必备插件

  • react-beautiful-dnd 漂亮,可移植性 列表拖拽库
  • react-dnd 可帮助我们构建复杂的拖放界面,同时保持组件的分离
  • react-moveable 支持自由拖拽, 缩放, 参考线的灵活强大的拖拽库
  • react-grid-layout 强大的网格拖拽排序缩放库
  • mixitup 强大的列表卡片排序动画库

7. 图像处理

做了N+1个企业项目之后, 我总结了这些React必备插件

  • react-image-crop 强大的图片裁切库
  • react-sparklines 基于数据自动生成趋势线
  • dom-to-image 基于dom生成图片的canvas
  • react-img-editor 图片编辑器

8. 编辑器相关

做了N+1个企业项目之后, 我总结了这些React必备插件

  • braft-editor 富文本编辑器
  • powerNice markdown/富文本编辑器
  • GGEditor 可视化图编辑器
  • react-codemirror2 代码编辑器
  • jsoneditor json编辑器
  • h5-dooring H5页面编辑器

9. 地图相关

做了N+1个企业项目之后, 我总结了这些React必备插件

  • google-map-react 谷歌地图插件
  • react-amap 高德地图插件
  • @uiw/react-baidu-map 百度地图

10. 脚手架

做了N+1个企业项目之后, 我总结了这些React必备插件

  • Create React App 初学者必备React傻瓜式脚手架
  • Next.js 构建服务端渲染的React脚手架
  • umi 企业级前端应用框架
  • webpack3_react 兼容IE9+且提供完整的React全家桶解决方案

最后

笔者已将文档同步到 github, 地址如下:

目前 H5-Dooring 可视化编辑器也成功更新了开发和部署文档 ,感兴趣的朋友可以感受了解一下.

点赞
收藏
评论区
推荐文章
技术小男生 技术小男生
4个月前
linux环境jdk环境变量配置
1:编辑系统配置文件vi/etc/profile2:按字母键i进入编辑模式,在最底部添加内容:JAVAHOME/opt/jdk1.8.0152CLASSPATH.:$JAVAHOME/lib/dt.jar:$JAVAHOME/lib/tools.jarPATH$JAVAHOME/bin:$PATH3:生效配置
光头强的博客 光头强的博客
4个月前
Java面向对象试题
1、请创建一个Animal动物类,要求有方法eat()方法,方法输出一条语句“吃东西”。创建一个接口A,接口里有一个抽象方法fly()。创建一个Bird类继承Animal类并实现接口A里的方法输出一条有语句“鸟儿飞翔”,重写eat()方法输出一条语句“鸟儿吃虫”。在Test类中向上转型创建b对象,调用eat方法。然后向下转型调用eat()方
徐小夕 徐小夕
1年前
做了N+1个企业项目之后, 我总结了这些React必备插件
为了提高大家开发React项目的效率,笔者结合自己的实际工作经验,汇总如下React项目常用插件.1.状态管理ReduxJavaScript状
刚刚好 刚刚好
4个月前
css问题
1、在IOS中图片不显示(给图片加了圆角或者img没有父级)<div<imgsrc""/</divdiv{width:20px;height:20px;borderradius:20px;overflow:h
blmius blmius
1年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
小森森 小森森
4个月前
校园表白墙微信小程序V1.0 SayLove -基于微信云开发-一键快速搭建,开箱即用
后续会继续更新,敬请期待2.0全新版本欢迎添加左边的微信一起探讨!项目地址:(https://www.aliyun.com/activity/daily/bestoffer?userCodesskuuw5n)\2.Bug修复更新日历2.情侣脸功能大家不要使用了,现在阿里云的接口已经要收费了(土豪请随意),\\和注意
晴空闲云 晴空闲云
4个月前
css中box-sizing解放盒子实际宽高计算
我们知道传统的盒子模型,如果增加内边距padding和边框border,那么会撑大整个盒子,造成盒子的宽度不好计算,在实务中特别不方便。boxsizing可以设置盒模型的方式,可以很好的设置固定宽高的盒模型。盒子宽高计算假如我们设置如下盒子:宽度和高度均为200px,那么这会这个盒子实际的宽高就都是200px。但是当我们设置这个盒子的边框和内间距的时候,那
艾木酱 艾木酱
3个月前
快速入门|使用MemFire Cloud构建React Native应用程序
MemFireCloud是一款提供云数据库,用户可以创建云数据库,并对数据库进行管理,还可以对数据库进行备份操作。它还提供后端即服务,用户可以在1分钟内新建一个应用,使用自动生成的API和SDK,访问云数据库、对象存储、用户认证与授权等功能,可专
Wesley13 Wesley13
1年前
MySQL查询按照指定规则排序
1.按照指定(单个)字段排序selectfromtable_nameorderiddesc;2.按照指定(多个)字段排序selectfromtable_nameorderiddesc,statusdesc;3.按照指定字段和规则排序selec
helloworld_28799839 helloworld_28799839
4个月前
常用知识整理
Javascript判断对象是否为空jsObject.keys(myObject).length0经常使用的三元运算我们经常遇到处理表格列状态字段如status的时候可以用到vue