Flutter: повторяющиеся элементы FirebaseAnimatedList - PullRequest
0 голосов
/ 10 июля 2020

Я использую FirebaseAnimatedList для получения данных из базы данных firebase в реальном времени, но мне нужно добавить каждый снимок в список, чтобы выполнять разбиение на страницы с помощью контроллера прокрутки, но каждый раз, когда я добавляю элемент в список firebase, элементы удваиваются или втрое, это мой код:

List item = [];

  Widget chatMessages() {
    item.clear();
    return FirebaseAnimatedList(
        reverse: true,
        duration: Duration(milliseconds: 600),
        query: _firebaseRef
            .child(widget.chatRoomId)
            .child("chats")
            .limitToLast(20),
        sort: (b, a) {
          return a.value['time'].compareTo(b.value['time']);
        },
        itemBuilder: (BuildContext context, DataSnapshot snapshot,
            Animation<double> animation, int index) {

          item.add({
            "message": snapshot.value['message'],
            "sendBy": snapshot.value['sendBy'],
            "time": snapshot.value['time']
          });

          return SizeTransition(
            sizeFactor: animation,
            child: MessageTile(
                message: item[index]['message'],
                sendByMe: widget.user.uid == item[index]['sendBy'],
                time: item[index]['time'])
          );
        });
  }
...