开源 | FLUI : Flutter 的组件扩展集

poster

在使用 Flutter 的过程当中,老是不断的在与组件打交道,虽然 Flutter 官方已经有极为丰富的 Material Design 以及 iOS 风格的组件集合,但咱们也须要不断的抽象,组合出一些新的基础组件或业务组件,FLUI 就是在开发过程当中陆续抽象出来的,目的就是可以在下沉高质量组件的同时提高界面开发效率。前端

GitHub 地址: github.com/Rannie/fluigit

FLUI 官网: flui.xingithub

也能够直接下载 Demo APK 体验: www.flui.xin/app/flui.ap…markdown

简介

arch

FLUI 的组件是在 Flutter 框架上进行的扩展,目前已经有 15 个类别而且在不断增长。app

每一个组件几乎都是独立的(少数有相互依赖),引入时能够直接 import 'package:flui.dart' 也能够 import 'package:flui/widgets/avatar.dart',编译打包时 tree-shaking 会接管依赖的优化流程。框架

将来 FLUI 也会加入一些业务组件,好比图表,图片选择器等等,关于组件的动态化配置和渲染也在探索中。工具

兼容性上,框架会一直基于 Flutter Stable Channel 开发。目前支持 v1.7.8+hotfix.1 及以上版本,不过很快会更新到 v1.12 +oop

安装使用:post

# Add dependency in pubspec.yaml
flui: ^0.7.4

# Install
$ flutter pub get

# Use FLUI now
import 'package:flui/flui.dart'
复制代码

组件

下面为 Demo 和组件的部分截图,具体使用能够参考文档。优化

widgets

关于主题,因为 Flutter 自己对主题的支持(配置,切换等)已经足够强大,因此 FLUI 设计的初衷就是无风格化的组件,尽量的从组件树中读取 ThemeData,另外大部分组件也是支持对颜色,样式进行设置的。

FLUI 里大部分组件的选择都是基于一致性,根据用户在各个平台的使用习惯迁移过来,这里也参考了不少其余平台上成熟的 UI 框架好比 Antd, QMUI, Vant 等等,因为 Flutter 将来面向的平台众多,因此能作的组件仍是一个比较大的体量。

FLUI 还有另一个目标就是提供交互反馈,好比支持显示 loading 的按钮,toast,支持伸缩和 shimmer 动画的骨架屏,支持点击效果的 ListTile 等等,这样用户能够清晰地感知到本身的操做,也能很好的标明当前页面的状态。

关于 Flutter

Flutter 官方在上周的 Flutter Interact 上刚刚发布了新的稳定版 1.12, Flutter Web 和 Desktop 也进一步加强,1.13 IDE 已经能够直接运行调试 MacOS 应用了。但目前仍是有不少的问题,好比 Repo 里 5000+ 的 issue 涉及到从开发到发布的各个环节,Flutter 自己更新节奏也很快,有的时候周边配套工具链的兼容性并非很好,新的 Flutter 版本在带来新特性的同时也不免引入一些新的问题。另外虽然 Skia 是一个跨平台的渲染引擎,不过其实底层也会作不少兼容性的处理或者出现不一样平台表现不一致的问题。

积极的是 Flutter 的关注度和发展依旧很快,有不少开发者在完善着社区,好比闲鱼团队在混合开发和效率工具上作了不少开源。 FLUI 也但愿能跟着社区一块儿不断完善,欢迎使用和提 PR ~

最后,也欢迎关注个人大前端公众号:

wechat
相关文章
相关标签/搜索