Как сохранить отдельное поле документа в облачном хранилище в локальную переменную во флаттере? - PullRequest
0 голосов
/ 12 июля 2020

Я хотел бы сохранить одно поле документа в локальной переменной, но я не могу этого сделать. Вот мой код:

void getPostsData() async{
    List<Widget> listItems = [];
    String _title;
    String _content;
    final QuerySnapshot result = await Firestore.instance.collection('Social_Posts').getDocuments();
    final List<DocumentSnapshot> documents = result.documents;
    documents.forEach((data){
      listItems.add(
          GestureDetector(
            onTap: () async{
              print(data["postTitle"]);
              print(data["postContent"]);
              setState(() {
               data["postTitle"] == _title;
               data["postContent"] == _content;
              });
              print(_title);
            },
       )
    );
      }

Всякий раз, когда я пытаюсь распечатать «_title» или «_content», я получаю null. Почему это происходит и как это исправить?

1 Ответ

1 голос
/ 12 июля 2020

Вероятно, вам следует изменить

       data["postTitle"] == _title;
       data["postContent"] == _content;

на:

       _title = data["postTitle"];
      _content= data["postContent"];
...