在本文中,将分享一些常见的 vue.js 组件。

Tables / Data Grids

Vue Tables-2

地址:https://github.com/matfish2/vue-tables-2

Vue Tables 2 旨在为开发者提供一个功能齐全的工具集,以便用 Vue 创建漂亮而实用的数据表格。数百个商业软件应用正在使用它。此外,Vue Tables 2 正在不断成长、改进,同时也在获得新的功能。

特点如下:

  • 可选行及粘性头部
  • 虚拟分页
  • 下载客户组件数据的 CSV
  • 有数据层支持的多级分组
  • Tailwind 主题

Handsontable

地址:https://github.com/handsontable/handsontable/tree/master/wrappers/vue

Handsontable 是一款页面端的表格交互插件,可以通过它加载显示表格内容,能够支持合并项、统计、行列拖动等。

支持对加载后的表格页面的处理:添加/删除行/列,合并单元格等操作。

此外,它还适用于 React、Angular 和 Vue。Handsontable 是一个 JavaScript 组件,它将数据网格功能与电子表格的用户体验相结合。此外,它还提供数据绑定、数据验证、过滤、排序和 CRUD 操作。

特点如下:

  • 多列排序
  • 非连续选择
  • 过滤数据和验证数据
  • 导出文件
  • 有条件的格式化
  • 合并单元格
  • 隐藏行/列
  • 上下文菜单和注释

Ag Grid Vue

地址:https://github.com/ag-grid/ag-grid

Ag-Grid 是一个基于 Vue.js 的数据表格组件。其中,“ag” 表示 “agnostic”。内部 ag-Grid 引擎是在 TypeScript 中实现的,零依赖关系。

ag-Grid 通过包装器组件支持 Vue,你可以在应用程序中,就像其他任何 Vue 组件一样使用 ag-Grid。它支持通过属性绑定传递配置,通过事件绑定来处理事件。你甚至可以使用 Vue 组件来自定义网格 UI 和单元格内容/行为。

Vue Easytable

地址:https://github.com/huangshuwei/vue-easytable

vue-easytable 是我遇到过的最强大的 Vue 表格组件之一。

表格组件具有许多内置功能,比如说,单元格省略号、固定/灵活的列大小调整、自定义过滤等等。它有几个特点:

  • 国际化
  • 主题定制
  • 内置主题
  • 虚拟滚动
  • 列固定
  • 表头固定
  • 表头分组

Vue Good Table

地址:https://github.com/xaksis/vue-good-table

Vue-Good-Table 是一个基于 Vue.js 的数据表组件,简单、干净,具有排序、列过滤、分页等更多基本功能。它有几个特性:

  • 表搜索和排序
  • 列过滤和分页
  • 复选框表格
  • 行分组
  • 行样式
  • 行多选

Notification

Vue Toastification

地址:https://github.com/Maronato/vue-toastification

它提供轻巧、简单和漂亮的吐司提示。它有内置的 Nuxt 支持。而且,它还支持新的 Composition API 和 Vue 3。我们还可以使用 JSX 来开发自定义组件,提供更加灵活的功能。另外,通用注册允许它在任何应用程序内使用,甚至是 React。它有几点特性:

  • 完全用 Typescript 编写,支持所有类型
  • 支持 RTL
  • 定制一切
  • 滑动关闭
  • 使用 onClose、onClick 和 onMounted 钩子创建自定义体验
  • 以编程方式删除和更新吐司

Vue Toasted

地址:https://github.com/shakee93/vue-toasted

Vue Toasted 是 Vue 最好的 toast (提示)插件之一。它被Vue,Laravel,NuxtJS 等许多组织所信任,它响应性强,兼容性好,使用方便,吸引人,有丰富的功能、图标、动作等。

Vue Notifications

地址:https://github.com/se-panfilov/vue-notifications

Vue Notifications 是一个与库无关的通知组件,非阻塞。

VueNotiments 将您的应用程序与通知 UI 库连接起来。支持 miniToastr、VueToasted、VueEasyToast、toastr、iziToast、Noty、swal。

Vue Awesome Notifications

地址:https://f3oall.github.io/awesome-notifications/

Awesome Notifications 是一个轻量级的,完全可自定义的 JavaScrip Vue Awesome Notifications,它是 Awesome Notifications 库的 Vue.js 版本。

Loader

Vue Wait

地址:https://github.com/f/vue-wait

Vue Wait 这是一个用于 VUE、Vuex 和 Nuxt 应用的复杂装载器和进度管理组件。

Vue Wait 帮助管理页面上的多个加载状态,状态之间没有任何冲突。基于一个非常简单的想法:通过管理具有多个加载状态的数组(或者 Vuex 存储),让内置加载程序组件侦听注册的加载程序,并立即进入加载状态。

Vue Content Loader

地址:https://github.com/egoist/vue-content-loader

Vue Content Loader 是一个基于 Vue.js 的 SVG 占位符加载,可自定义的 SVG 组件,用于创建占位符加载,例如 Facebook 加载卡。Vue Content Loader 是 react-content-loader 的 Vue 实现。

Epic Spinners

地址:https://epic-spinners.epicmax.co/

EpicSpinners 是一组易于使用的纯 css 打造的网页 Loading 效果,并且同时整合了 Vue 组件可以方便的在 Vue 项目中进行使用,由于是纯 css 打造,你可以在任意网页项目中自行整合并使用!

Vue Radial Progress

地址:https://github.com/wyzant-dev/vue-radial-progress

Vue Radial Progress 这是一个径向进度条效果的加载器组件,使用 svg 和 javascript 绘制带有渐变径向进度条效果的加载器,可以用作加载、进度提示。

ICONS

Vue Feather Icons

地址:https://github.com/egoist/vue-feather-icons

Feather 是一套面向设计师和开发者的开源图标库,是一个简单漂亮的开源图标库。每个图标都设计在一个24×24的网格上,强调简单,一致性和易读性。很多大厂出品的前端框架都内置了这款可以免费商用的图标。它的特点如下:

  • 每一枚图标都是按照统一标准进行设计,具有完美像素对齐;
  • 设计风格一致,完胜那些拼凑混搭的图标库;
  • 覆盖多种开发场景的支持,对开发者非常友好。

Vue Awesome

地址:https://github.com/Justineo/vue-awesome

Font Awesome是一套流行的图标字体库,我们在实际开发的过程中会经常遇到需要使用图标的场景,对于一些常用的图标,不用设计师,我们可以直接在Font Awesome中找到并且使用。个人感觉Font Awesome的图标还是很齐全的,绝大多数的图标它都包含了,而且支持各种框架。

Charts

Vue Apexcharts

地址:https://github.com/apexcharts/vue-apexcharts

Apexcharts 是一个现代的 JavaScript 图表库/可通过简单的 API 构建交互式图表和可视化。Vue Apexcharts 是 ApexCharts 的 Vue.js 组件。

Vue Echarts

地址:https://github.com/Justineo/vue-echarts

vue-echarts 是基于 echarts 封装实现的一个组件库,直接按照正常的组件引用方式,安装引用即可,具体的安装和引用读者可以直接阅读 vue-echarts 技术文档。

Vue Chartjs

地址:https://github.com/apertureless/vue-chartjs

vue-chartjs 是一个 Vue 对于 Chart.js 的封装,让用户可以在Vue中轻松使用Chart.js,很简单的创建可复用的图表组件,非常适合需要简单的图表并尽可能快地运行的人。vue-chartjs抽象了基本逻辑,同时也暴露了Chart.js对象,让用户获得最大的灵活性。

V-Charts

地址:https://github.com/ElemeFE/v-charts

V-Charts 是基于 Vue2.0 和 Echarts 封装的图标组件,只需要统一提供一种对前后端都友好的数据格式设置简单的配置项,就可以生成常见的图表。

时间

Vue Timer Hook

地址:https://github.com/riderx/vue-timer-hook

Vue3 计时器模块的灵感来自 react-timer-hook。此外,它是一个自定义的钩子,用来处理 vue 3 组件中的定时器、秒表和时间逻辑/状态。

Vue Horizontal Timeline

地址:https://github.com/guastallaigor/vue-horizontal-timeline

Vue Horizontal Timeline 是一个用 Vue.js 制作的简单的水平时间线组件。