在某些情况下不更新Firestore文档字段?

时间:2020-05-28 17:31:23

标签: flutter google-cloud-firestore

这是我的上传配置文件数据功能,按下该功能即可

updateProfileData() async {
print(usernameController.text);
print(bioController.text);
final valid =
    await usernameCheck(usernameController.text.toLowerCase().trim());
print(valid);

setState(() {
  displayNameController.text.trim().length < 3 ||
          displayNameController.text.trim().isEmpty
      ? _displayNameValid = false
      : _displayNameValid = true;
  usernameController.text.trim().toLowerCase().length < 3 ||
          usernameController.text.trim().toLowerCase().isEmpty
      ? _usernameValid = false
      : _usernameValid = true;

  (valid) ? _usernameValid = true : _usernameValid = false;
});

if (_displayNameValid && _usernameValid) {
  await userRef.document(widget.currentuserId).updateData({
    "displayName": displayNameController.text,
    "username": usernameController.text.toLowerCase().trim(),
    "bio": bioController.text,
  });

  SnackBar snackbar = SnackBar(
    content: Text('Profile Updated!'),
  );
  _scaffoldKey.currentState.showSnackBar(snackbar);
}
}

它不会在Firestore文档字段中更新-如果我仅更改bio或displayName,则不会更新Firestore,但是如果我更改用户名,它将起作用。为什么会这样?

0 个答案:

没有答案