【发布时间】:2021-04-08 21:15:33
【问题描述】:
我正在尝试向用户电子邮件发送重置密码链接。
案例 1:当用户没有注册电子邮件时显示一个快餐栏。
案例 2:发送电子邮件时显示一个快餐栏。
案例 3:如果出现错误,则显示一个快餐栏。
final GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey<ScaffoldState>();
这是构建函数:
@override
Widget build(BuildContext context) {
return Scaffold(
key: _scaffoldKey,
body: InkWell(...
此函数显示快餐栏: //小吃吧
void showInSnackBar(String value) {
ScaffoldMessenger.of(context).showSnackBar(SnackBar(
content: Text(value),
duration: const Duration(seconds: 5),
action: SnackBarAction(
label: 'OKAY',
onPressed: () {
ScaffoldMessenger.of(context).hideCurrentSnackBar();
},
),
));
}
我正在调用显示此按钮的小吃栏:
CustomButton(
name: 'Get Confirmation Email',
color: Colors.redAccent,
onPressed: () async {
if (_formKey.currentState.validate()) {
FocusScope.of(context).unfocus();
try {
//Check if email already exist
List<String> res =
await _auth.checkEmail(_emailController.text);
print(res);
if (res == ['password']) {
await _auth.resetPassword(_emailController.text);
showInSnackBar('Email sent.Check your mail');
} else {
showInSnackBar('Email is not registered');
}
} catch (e) {
showInSnackBar(e);
}
}
},
)
输出:[密码]
问题:
在 UI 上显示:Email is not registered,但它应该是Email sent.Check your mail。
我不明白这里出了什么问题。它没有得到正确的上下文吗?
【问题讨论】:
标签: flutter