gpt4 book ai didi

datatable - 使用 Firestore 和 Flutter 填充 DataTable(使用 StreamBuilder)

转载 作者:IT王子 更新时间:2023-10-29 06:46:19 24 4
gpt4 key购买 nike

如何使用 StreamBuilder 填充 DataTable?

下面是我的代码:

          new StreamBuilder(
stream: widget._returnStreamWithActiveKeysOnly(),
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {
if (!snapshot.hasData) return new Text('Loading...');
return new DataTable(
columns: <DataColumn>[
new DataColumn(
label: Text('type'),
tooltip: 'Ordinary or service (1 day only, restricted time)',
),
new DataColumn(label: Text('Key')),
new DataColumn(label: Text('Check-in')),
new DataColumn(label: Text('Check-out')),
],
rows: _listOfRows(snapshot),

);
},
)

我找不到一种方法(如内置构建器)来指示要传递给 _listOfRows 函数的文档索引,或者如何访问每个流的当前文档。

最佳答案

我不知道你的流中有什么数据,但这里有一个关于如何做到这一点的想法:

 DataTable(
rows: _createRows(snapshot.data),
)

您希望构建器方法返回 List<DataRow>

  List<DataRow> _createRows(QuerySnapshot snapshot) {

List<DataRow> newList = snapshot.documents.map((DocumentSnapshot documentSnapshot) {
return new DataRow(cells: _createCellsForElement(documentSnapshot["someDataYouWantToProcessForCellData"]));
}).toList();

return newList;
}

您可以对单元格创建应用相同的逻辑,或者您也可以在第一个 map 函数中执行此操作。

关于datatable - 使用 Firestore 和 Flutter 填充 DataTable(使用 StreamBuilder),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50733005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com