我的意思是当我登录时,但是网络到数据库有问题,会出现一个信息对话框,表明网络有问题。如果在这里,我对使用其他内容感到困惑..
_login() async {
if (formKey.currentState.validate()) {
formKey.currentState.save();
try {
final response = await UserController.login({
"username": username,
"password": password,
});
if (response != null && response["success"]) {
Http.setAccessToken(response["token"]);
return Navigator.pushReplacement(
context,
MaterialPageRoute(
builder: (context) => MainActivity(),
));
} else {
await showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text("Information"),
content: Text("Your account is not registered!"),
actions: <Widget>[
FlatButton(
child: Text("Close"),
onPressed: () {
Navigator.of(context).pop();
},
),
],
);
},
);
}
} catch (e) {
print(e.message);
}
}
}
如果网络有问题,我该如何设置条件然后返回 showDialog ??
查看 Flutter 团队的连接包。 https://pub.dev/packages/connectivity
您可以侦听网络更改中的任何问题,然后在断开连接时显示小吃栏或对话框。
我希望这有所帮助。
杰克