前言
在开发中,我们经常会将一些常用的代码块、功能块进行封装,为的是更好的复用。那么,被抽离出来独立完成功能,通过API或配置项和其他部分交互,便形成了插件。
下面这些是我在工作中积累的一些常用的前端开源插件,这里只是罗列出来,详细的用法各个插件官网或者Github都有介绍。
函数库
Lodash(推荐)
- Lodash 是一个一致性、模块化、高性能的 JavaScript 实用工具库。
- www.lodashjs.com/
Math.js
- Math.js 是一个在 JavaScript 和 Node.js 中应用广泛的数学公式库,它具有灵活的表达式解析器,支持符号计算,带有大量内置函数和常量,并提供了一个集成的解决方案,可以处理不同的数据类型。
- mathjs.org/
手册与规范
Lodash(推荐)
- Lodash 是一个一致性、模块化、高性能的 JavaScript 实用工具库。
- www.lodashjs.com/
数据可视化
-
ECharts :一个基于 JavaScript 的开源可视化图表库
-
阿里AntV :蚂蚁集团全新一代数据可视化解决方案
CSS类库
Tailwind CSS
-
Tailwind CSS 是一个功能类优先的 CSS 框架,它集成了诸如
flex
,pt-4
,text-center
和rotate-90
这样的的类,它们能直接在脚本标记语言中组合起来,构建出任何设计。
Normalize.css
-
Normalize.css 使浏览器呈现所有 HTML 元素更加一致,并且符合现代 web 标准。Normalize.css 只作用于需要规范化的样式。
Animate.css
- Animate.css是一个随时可用的跨浏览器动画库,可用于您的 Web 项目。非常适合强调、主页、滑块和注意力引导提示。。
- animate.style/
Hover.css
- CSS hover 悬停效果,可以应用于链接、按钮、图片等等。
- ianlunn.github.io/Hover/
图标字体
- iconfont-阿里巴巴矢量图标库 www.iconfont.cn/
- IconPark-头条开源图标库 iconpark.oceanengine.com/home
动画库
Anime.js
- 一个JavaScript动画库,可以处理CSS属性,单个CSS转换,SVG或任何DOM属性以及JavaScript对象
- www.animejs.cn/
视频音频
- 西瓜视频播放器(HTML5) v2.h5player.bytedance.com/
- video.js videojs.com/
复制到剪贴板
- clipboard.js 是一个不依赖 Flash,将文本复制到剪贴板的插件,仅仅 2kb。
- clipboardjs.com/
轮播图
Swiper
- 常用于移动端网站的内容触摸滑动
- www.swiper.com.cn/
滚动事件
Waypoints
- Waypoints 是一个用来实现捕获各种滚动事件的工具。
- imakewebthings.com/waypoints/
图形处理
html2canvas
- html2canvas 能够实现在用户浏览器端直接对整个或部分页面进行截屏。
- html2canvas.hertzen.com/
时间日期处理
Moment.js
- Moment.js 是一个解析,验证,操作和显示日期和时间的 JavaScript 类库。
- momentjs.com
Day.js
- Moment.js 的 2kB 轻量化方案,拥有同样强大的 API
- dayjs.gitee.io/zh-CN/
头像裁剪
- Image Cropper可以为图片显示一个裁剪框,裁剪框允许用户调整大小和位置,常用来做用户自定义头像的裁剪功能。
- elemefe.github.io/image-cropp…
货币格式化
currency.js
- Currency.js是一款专门处理货币值的开源免费的类库。它与Numeral.js非常相似,但是处理货币值上似乎要更专业。通过较灵活的API解决JavaScript常见的浮点问题,加减乘除的计算都可以做,处理货币的时候,还可以把分值单独提取出来,其格式转换的方法也相对工整。
- currency.js.org/
前端存储
localForage
- localForage 是一个 JavaScript 库,通过简单类似
localStorage
API 的异步存储来改进你的 Web 应用程序的离线体验。它能存储多种类型的数据,而不仅仅是字符串。 - localforage.docschina.org/
FileSaver.js
- FileSaver.js 是在客户端保存文件的解决方案,非常适合需要生成文件,或者保存不应该发送到外部服务器的敏感信息的 web App。如果你需要保存较大的文件,不受 blob 的大小限制或内存限制,可以看一下更高级的 StreamSaver.js,它使用强大的 stream API,可以将数据直接异步地保存到硬盘。支持进度、取消操作以及完成事件回调。
- github.com/eligrey/Fil…
模糊查询
富文本编辑器
- wangEditor:www.wangeditor.com/