table 的限制列表 - Flutter

Restrict list for table - Flutter

我想限制 table 中的行数,因为我从 API 中得到大约 40 行,我需要制作 5 行。告诉我,应该在 List.generate 中应用什么方法来仅显示列表中的前 5 个元素?提前致谢。

数据表

child: FutureBuilder<List<BlockModel>>(
              future: futureBlock,
              builder: (context, snapshot) {
                if (snapshot.hasData) {
                  return DataTable(
                      columns: const [
                        DataColumn(label: Text('Height')),
                        DataColumn(label: Text('Hash')),
                        DataColumn(label: Text('Time')),
                      ],
                      rows: List.generate(snapshot.data!.length, (index) {
                        return DataRow(cells: [
                          DataCell(Text('${snapshot.data![index].height}')),
                          DataCell(Text(snapshot.data![index].hash)),
                          DataCell(Text('${snapshot.data![index].time}')),
                        ]);
                      })
                      );
                } else {

List.generate的第一个参数是长度。您目前写了 snapshot.data!.length,如果您想要前 5 个,只需将 5 放在那里。

您可以在生成列表时 restrict the length

rows: List.generate(5, (index) {

// ---Your Code---

}

在这里您可以看到您可以传递预定义的长度而不是 snapshot.data!.length。如果 snapshot.data.length 小于五个

,请自行应用逻辑