我不斷在下面的這些代碼行中對空值使用空值檢查運算子,我似乎無法理解為什么。我在這個平臺上參考了很多資料,但似乎都沒有幫助。可以請幫忙嗎?
AuthServices authServices = AuthServices();
void checkRegistration() {
final isValid = registerKey.currentState!.validate();
if (!isValid) {
return;
}
registerKey.currentState!.save();
authServices.auth
.createUserWithEmailAndPassword(
email: registerEmailController.text.trim(),
password: registerPasswordController.text.trim(),
)
.then((value) {
FirebaseFirestore.instance.collection("users").doc(value.user!.uid).set({
"uid": value.user!.uid,
"email": value.user!.email,
"name": value.user!.displayName,
"phone": value.user!.phoneNumber,
"time": Timestamp.now(),
});
});
}
uj5u.com熱心網友回復:
添加條件以檢查用戶是否為空,然后再將其保存到檔案。我認為這就是它為空并檢查其他值的地方
AuthServices authServices = AuthServices();
void checkRegistration() {
if(registerKey.currentState != null)
{
final isValid = registerKey.currentState!.validate();
if (!isValid) {
return;
}
registerKey.currentState!.save();
}
authServices.auth
.createUserWithEmailAndPassword(
email: registerEmailController.text.trim(),
password: registerPasswordController.text.trim(),
)
.then((value) {
if(value.user != null)// check if the user is recived in value before assigning
{
FirebaseFirestore.instance.collection("users").doc(value.user!.uid).set({
"uid": value.user!.uid,
"email": value.user!.email,
"name": value.user!.displayName,
"phone": value.user!.phoneNumber,
"time": Timestamp.now(),
});
});
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/492838.html
