在Flutter中使用PageView.builder的输入创建和更新数据库

时间:2020-04-13 21:44:33

标签: firebase flutter google-cloud-firestore

我有一个具有TextFormfield和标题的PageView.builder。构建器遍历列表中的元素,在最后一个元素上,有一个提交按钮,我想将“键:值”对发送到firestore。当我为每个使用时,它只会多次创建列表最后一项的内容。

这是我的创建和更新功能:

        Future updateDatabase(String remarkText) async {
          return await databaseCollection.document().setData({
            questionItems[index].title : questionItems[index].remarkText 
          });
        }

这就是我在按钮中的称呼方式

                  onPressed: () async { 
                    questionItems.forEach((question) async { 
                    await updateDatabase(remarkText);
                    });

                  },

我如何遍历它们以发送先前项目的数据?请帮忙。

1 个答案:

答案 0 :(得分:0)

我认为它会遍历所有项目,但在Firestore中始终更新同一项目。变量index应该在每次迭代中都以某种方式更改。否则,每次迭代将在相同的questionItems[index]上设置值。

我希望它将对您有帮助!