flutter库有哪些

最近在学习Flutter开发,想了解一些常用的Flutter库有哪些?主要想找UI组件、网络请求、状态管理、数据库相关的库,希望有经验的开发者能推荐一些稳定好用的库,最好能简单说明下各自的特点和适用场景。谢谢!

2 回复

Flutter常用库包括:

  • UI组件:flutter/material、flutter/cupertino
  • 状态管理:provider、riverpod、bloc
  • 网络请求:dio、http
  • 路由:go_router、auto_route
  • 本地存储:shared_preferences、sqflite
  • 动画:lottie、rive
  • 工具:flutter_hooks、get_it

可在pub.dev查找更多库。

更多关于flutter库有哪些的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


Flutter 拥有丰富的第三方库,主要通过 pub.dev 平台管理。以下是一些常用且重要的库分类及代表:

1. 状态管理

  • Provider:官方推荐,轻量易用。
  • Riverpod:Provider 的增强版,更安全灵活。
  • Bloc/Cubit:分离业务逻辑与界面,适合复杂应用。
  • GetX:集状态管理、路由、依赖注入于一体,代码简洁。

2. 网络请求

  • Dio:功能强大,支持拦截器、文件上传等。
  • http:官方基础库,轻量简单。

3. 本地存储

  • shared_preferences:存储键值对数据(类似 Android 的 SharedPreferences)。
  • sqflite:SQLite 数据库操作。
  • hive:高性能键值数据库,无需 Native 依赖。

4. 路由导航

  • go_router:声明式路由,支持深度链接。
  • auto_route:基于代码生成,类型安全。

5. UI 组件与动画

  • flutter_slidable:侧滑操作组件。
  • lottie:渲染 After Effects 动画。
  • cached_network_image:带缓存的网络图片加载。

6. 工具与扩展

  • flutter_hooks:简化状态逻辑(类似 React Hooks)。
  • freezed:生成不可变类及工具方法。

示例:使用 Dio 发起 GET 请求

import 'package:dio/dio.dart';

void fetchData() async {
  final dio = Dio();
  try {
    final response = await dio.get('https://api.example.com/data');
    print(response.data);
  } catch (e) {
    print('请求失败: $e');
  }
}

建议

  • 访问 pub.dev 根据需求搜索库,注意评分、更新频率和文档完整性。
  • 优先选择空安全(null-safe)且维护活跃的库。

需要具体场景推荐时可进一步说明需求!

回到顶部