Dart 将数据从查询传输到变量

Dart 将数据从查询传输到变量,dart,flutter,Dart,Flutter,您好,我正在开发一个应用程序,但它停止了,因为我有一个问题,我要解释一下: 我在main.dart文件中创建了一个应用程序登录屏幕。在这个文件中,我使用PHP文件对我的服务器进行查询,使用JSON对查询进行编码,在dart文件中,我使用JSON.decode验证数据 现在的问题是,我如何将该数据放入变量中,以便在另一个小部件中使用它?我试图做的是将查询中的姓名和电子邮件放入我的侧栏菜单,这是我的主页小部件 省道: 类登录状态扩展状态{ @凌驾 小部件构建(构建上下文){ TextEditingC

您好,我正在开发一个应用程序,但它停止了,因为我有一个问题,我要解释一下: 我在
main.dart
文件中创建了一个应用程序登录屏幕。在这个文件中,我使用PHP文件对我的服务器进行查询,使用
JSON
对查询进行编码,在dart文件中,我使用
JSON.decode
验证数据

现在的问题是,我如何将该数据放入变量中,以便在另一个小部件中使用它?我试图做的是将查询中的姓名和电子邮件放入我的侧栏菜单,这是我的
主页
小部件

省道:

类登录状态扩展状态{
@凌驾
小部件构建(构建上下文){
TextEditingController用户=新建TextEditingController();
TextEditingController pass=新的TextEditingController();
Future\u login()异步{
最终响应=等待
http.post(“https://exclinico.com/admin/FlutterClases/login.php“,主体:{
“correo”:user.text,
“密码”:pass.text,
});
打印(响应.正文);
var datosuario=json.decode(response.body);
如果(Datosuario.length==0){
门萨耶(上下文);
}
否则{
pushReplacementNamed(上下文,'/mainpage');
}
}
PHP:


class LoginStates extends State<Login>{

@override

Widget build(BuildContext context) {

TextEditingController user=new TextEditingController();

TextEditingController pass=new TextEditingController();

Future<List> _login() async{

  final response =await 

http.post("https://exclinico.com/admin/FlutterClases/login.php", body: {

    "correo": user.text,

    "password": pass.text,

  });

  print(response.body);

 var datosusuario = json.decode(response.body);


 if (datosusuario.length==0) {

  Mensaje(context);

   }

   else{

     Navigator.pushReplacementNamed(context, '/mainpage');

   }

}
<?php

include("conexion.php");

$usuario=$_POST['correo'];

$contraseña=$_POST['password'];

$contraseña=base64_encode($contraseña);

$query=$conexion->query("SELECT*FROM paciente WHERE correo_elect = '$usuario' AND password='$contraseña'");

$resultado=array();

while($fetchData=$query->fetch_assoc()){

 $resultado[]=$fetchData; 

}

$_SESSION['correo'] = $usuario;

 echo json_encode($resultado);

?>