首页 > 解决方案 > 单个文件中的小部件与 Flutter 中的多个文件

问题描述

我想知道根据 Flutter 中的小部件组织的最佳实践是什么。让我们想象一下,我正在应用程序中编写一些更大的小部件,例如侧边栏。这个小部件由几个较小的小部件(如标题、一些问候语、用户数据、菜单按钮列表等)组成,我知道这些小部件不会在其他小部件中重用。现在我的问题是 - 是否应该将它们全部保存在同一个文件(构建这些小部件的小部件或方法)中,因为它们的上下文是相同的,或者我应该将它们分成大量小文件以便为它们编写测试更容易?

标签: flutterflutter-test

解决方案


据我所知,拥有一个单独的文件不应该带来任何与测试相关的优势。无论如何,Flutter 单元测试通常都写在一个单独的目录中。为小部件使用单独的文件对于可读性重用(正如您提到的)而不是测试很有用。

我个人尝试每个文件有一个公共小部件,并将复杂的小部件分解为驻留在同一文件中的较小的私有类(而不是方法)。如果一个小部件可以重复使用,或者如果它足够复杂以使文件不可读,我将它声明为一个单独文件中的公共类。

另外:您的代码库增长得越多,您可能会发现使用目录(而不是文件)将在同一“上下文”中使用的小部件组合在一起的作用越大。


推荐阅读