rapido
Rapido brings Rapid Application Development principles to mobile development, currently available for Flutter.
简介
Rapido 使构建以文档为中心的应用变得简单,通过
- 提供一个 DocumentList 类,使管理用户数据,包括持久化,变得容易。
- 提供了许多您需要与 DocumentList 配合使用的 UI 元素,包括 ListViews、Forms 和其他小部件。它们知道如何与 DocumentList 配合,因此几乎无需额外编码即可提供大量功能。
- 轻松自定义核心小部件的能力。
展示一下
创建一个 DocumentList 并定义字段标签,然后像这样创建一个 DocumentListScaffold
class _MyHomePageState extends State<MyHomePage> {
DocumentList taskList = DocumentList("Tarea",
labels: {"Date": "date", "Task": "task", "Priority": "pri count"});
@override
Widget build(BuildContext context) {
return DocumentListScaffold(taskList);
}
}
rapido 小部件会根据字段名称推断每个字段中的数据类型。您无需额外编码即可获得所有功能。

您可以替换任何小部件,也可以使用内置的自定义挂钩来快速创建自己的外观和感觉。
更仔细地看看
使用 DocumentList 概览
DocumentList 是 R.A.D. 体验的核心。通过简单地使用列表,您将获得
- 对象的本地持久化。
- 默认的 CRUD UI,您的用户可以使用它来显示、创建、编辑和删除列表中的文档。
导入
所有您需要的东西都在 document_list.dart 中
import 'package:rapido/document_list.dart';
此导入包括 DocumentList 本身,以及所有与它协同工作 UI 元素。
DocumentList
要创建 DocumentList,只需包含一个“documentType”字符串即可。DocumentList 使用此字符串来组织其文档。然后,您只需传入 Map<String, dynamic> 类型的映射即可向其中添加文档。
DocumentList taskList = DocumentList("tasks");
taskList.add({"name":"grocery shopping", "priority": 1, "done": false});
请注意,映射使用字符串作为键,但值是动态的。您可以在 DocumentList 中存储任何您喜欢的内容。
您可以使用正常的列表功能来修改和删除文档。
taskList[0] = {"name":"grocery shopping", "priority": 1, "done": true};
您可以删除它们
taskList.removeAt[0];
请注意,对 DocumentList 的所有更改都会自动持久化到用户的手机上!用户可以关闭应用程序,当他们重新打开时,数据仍然在那里。
UI 元素
创建 DocumentList 后,您可以在 Rapido 提供的各种 UI 元素中使用它。只需传入 DocumentList,小部件就可以自行确定要向用户显示哪些功能。
例如,如果您想轻松创建一个支持添加、删除和编辑文档的应用程序,您可以使用 DocumentListScaffold 类。
DocumentListScaffold(taskList, title:"Task List");
DocumentListView 将创建一个 ListView 来显示和编辑列表中的项目。它还提供了几个自定义选项,但默认设置“就是好用”。
DocumentListView(taskList);
DocumentForm 允许轻松创建新文档或编辑现有文档。
创建新文档
DocumentForm(taskList);
编辑现有文档
DocumentForm(taskList, index: 0);
欢迎反馈
Rapido 正在快速发展中。请访问 我们的 Github 仓库 来记录任何问题或功能请求。当然,我们非常欢迎 pull request。
路线图
更多 TypedInputFields
DocumentForm 通过根据文档中的字段名称创建输入字段来工作。我们目前的计划是添加更多类型的输入字段,例如
- 开关
- 收藏
- 时间与日期时间
- 长文本
云存储和同步
我们计划让 DocumentList 的文档存储和同步变得极其容易。
相机小部件
我们需要大大简化在应用程序中使用相机的过程。