Flutter 颤振数据表-空集装箱减缓装载时间

Flutter 颤振数据表-空集装箱减缓装载时间,flutter,dart,Flutter,Dart,我正在构建一个应用程序,其中家庭详细信息(分为3个部分)显示在同一页面上的3个不同数据表中。问题是在加载将显示3个数据表的页面之前,捕获到异常,之后页面将加载并正确显示3个数据表以及正确的数据 ════════ Exception caught by widgets library ═══════════════════════════════════ The following NoSuchMethodError was thrown building SecondPage(dirty, de

我正在构建一个应用程序,其中家庭详细信息(分为3个部分)显示在同一页面上的3个不同数据表中。问题是在加载将显示3个数据表的页面之前,捕获到异常,之后页面将加载并正确显示3个数据表以及正确的数据

════════ Exception caught by widgets library ═══════════════════════════════════
The following NoSuchMethodError was thrown building SecondPage(dirty, dependencies: [MediaQuery], state: _SecondPageState#eba94):
The method 'map' was called on null.
Receiver: null
Tried calling: map<DataRow>(Closure: (AdultDetails) => DataRow)

The relevant error-causing widget was
    SecondPage 
它对我起作用了——方法“map”是在null上调用的。错误屏幕不会显示,但现在每个数据表的加载大约需要3秒。如何提高加载性能?非常感谢您的帮助。

使用三元条件

例如:

list1 == null ? Container() : list1?.map(
                      (item) => DataRow(cells: [
                        DataCell(
                          Text(item.pensionerName.toString()),
                        ),

                       ...

                    )?.toList() ?? [],
              ),
使用三元条件

例如:

list1 == null ? Container() : list1?.map(
                      (item) => DataRow(cells: [
                        DataCell(
                          Text(item.pensionerName.toString()),
                        ),

                       ...

                    )?.toList() ?? [],
              ),

它给出以下错误,然后毫不延迟地加载3个数据表:
════════ widgets库捕获到异常═══════════════════════════════════ 类型“Container”不是类型“List”的子类型导致错误的相关小部件是SecondPage
错误本身表示您不需要在行内使用三元运算符:,但作为外部widget,很抱歉答复太晚。您能否更清楚地了解如何将其用作外部小部件?下面是导致错误的小部件。如果你能提出建议,我将不胜感激<代码>MaterialPackageRoute(生成器:(上下文)=>SecondPage(widget.familyRef))您需要显示更多代码,因此我无法帮助您muchIt给出以下错误,然后立即加载3个数据表:
════════ widgets库捕获到异常═══════════════════════════════════ 类型“Container”不是类型“List”的子类型导致错误的相关小部件是SecondPage
错误本身表示您不需要在行内使用三元运算符:,但作为外部widget,很抱歉答复太晚。您能否更清楚地了解如何将其用作外部小部件?下面是导致错误的小部件。如果你能提出建议,我将不胜感激<代码>MaterialPackageRoute(生成器:(上下文)=>SecondPage(widget.familyRef))你需要显示更多的代码,这样我帮不了你多少忙
list1 == null ? Container() : list1?.map(
                      (item) => DataRow(cells: [
                        DataCell(
                          Text(item.pensionerName.toString()),
                        ),

                       ...

                    )?.toList() ?? [],
              ),