flutter设计模式

该项目由一个非营利组织维护,同时还收集了令人惊叹的Flutter示例。我们正尝试随着Flutter技术的发展进行持续的提交和更改。

Design Pattern

此示例的目标

  • 展示了使用 Provider 包的状态管理方法,主要使用 StreamProvider 和 ChangeNotifier。
  • 展示了从不同数据源获取数据的逻辑,如上图所示。

内存获取数据

更改repositories/catalog.dart

const dataSource = 'memory';

repositories/catalog.dart 用于获取数据的路由分发
memory/catalog.dart 所有CURD操作都将在此
file/catalog.dart 定义数据

Sqlite获取数据

更改repositories/catalog.dart

const dataSource = 'db';

通知

您无法使用cart.items.contains(item)来比较目录是否在购物车中,因为使用的是数据库重新加载数据。在购物车控制器中添加contains方法,并使用以下方式:

cart.contains(item.id)

待办事项

  • Http实现

屏幕截图

Screen Shots Screen Shots

GitHub

https://github.com/flutter-samples/flutter-design-pattern