如何使用 API 和本地数据存储正确构建 Flutter 项目?

Ash*_*hok 5 project-structure project-structuring dart flutter

所以我用 laravel 后端在 flutter 中创建了一些应用程序,这些应用程序只能在线运行。现在我需要让一个应用程序离线工作,我正在考虑使用 Hive。但现在的问题是我找不到关于如何正确管理这么大的项目的好资源。我过去的项目大多很小,但有了本地存储等,我想使用接口和存储库来管理项目。但我不知道如何将所有内容放在一起以便代码易于管理。

那么有人可以帮助我吗?有没有我可以研究的这样的项目,甚至可能是一篇文章或一个视频。任何能够阐明如何在 Flutter 中构建大型项目的内容都将受到赞赏。

小智 8

如何构建 Flutter 项目没有对错之分。您可以将所有内容放入一个文件中。它还取决于所使用的包,例如我使用 BLoC 作为状态管理,这些是该包推荐的一些项目结构:

\n\n

我不使用其中任何一个,我制作了自己的项目结构,稍后我将对此进行解释。Dart有一个包布局约定(不适用于 Flutter 项目)。

\n

我使用以下结构:

\n
\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80lib/\n\xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80blocs/\n\xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80models/ \n\xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80repositories/\n\xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80screens/\n\xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80utils/\n\xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80widgets/\n\xe2\x94\x82  \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80main.dart\n
Run Code Online (Sandbox Code Playgroud)\n

我将所有内容分开放在文件夹中,以便前端开发人员可以在包含所有设计内容的 widgets 文件夹上工作,而后端开发人员可以在包含所有逻辑的 blocs 文件夹上工作。

\n

请记住,没有错误或正确的答案。查看您最喜欢的状态管理包推荐的推荐项目结构,或观看此演讲:保持简单,状态:Flutter 应用程序架构 (DartConf 2018)

\n