Я пытаюсь загрузить значение нескольких текстовых полей, но firestore продолжает сбрасывать все значения, поэтому старые исчезают. Я хотел бы иметь возможность установить значение для первого текстового поля (alOne) и, возможно, вернуться позже и установить значение для второго текстового поля (alTwo). но в моем случае, когда задано второе значение, первое исчезает из хранилища?
это моя функция сообщения
static void createPostMonday(Post post) async{
await postsRef.document(post.authorId).setData({
'alOne':post.alOne,
'alTwo':post.alTwo,
'alThree':post.alThree,
'alFour':post.alFour,
'alFive':post.alFive,
'alSix':post.alSix,
'beOne':post.beOne,
'beTwo':post.beTwo,
'beThree':post.beThree,
'beFour':post.beFour,
'beFive':post.beFive,
'beSix':post.beSix,
'likes': post.likes,
'authorId': post.authorId,
'timestamp': post.timestamp,
},merge: true);
, а вот кнопка действия (отправки)
_submit() async{
Post post = Post(
authorId: Provider.of<UserData>(context, listen: false).currentUserId,
timestamp: Timestamp.fromDate(DateTime.now()),
alOne1: _alOne1,
alTwo1: _alTwo1,
alThree1: _alThree1,
alFour1: _alFour1,
alFive1: _alFive1,
alSix1: _alSix1,
beOne1: _beOne1,
beTwo1: _beTwo1,
beThree1: _beThree1,
beFour1: _beFour1,
beFive1: _beFive1,
beSix1: _beSix1,
);
DatabaseService.createPostMonday(post);
Navigator.pop(context);
}
и это 2. из моих текстовых полей
Padding(
padding: EdgeInsets.symmetric(horizontal: 30.0),
child: TextField(
style: TextStyle(fontSize: 18.0),
decoration: InputDecoration(
labelText: 'Alternativ',
),
onChanged: (input) => _alOne1 = input,
),
),
Padding(
padding: EdgeInsets.symmetric(horizontal: 30.0),
child: TextField(
style: TextStyle(fontSize: 18.0),
decoration: InputDecoration(
labelText: 'Beskrivning',
),
onChanged: (input) => _beOne1 = input,
),
),