Variables 如何在容器中调用电子邮件?在颤振机器人pp

Variables 如何在容器中调用电子邮件?在颤振机器人pp,variables,flutter,dart,jwt,Variables,Flutter,Dart,Jwt,我需要在容器中显示JWT标记值。我尝试了很多方法返回值,声明一个全局变量,但都不起作用。当我声明一个全局变量时,它发送空值。我该怎么做? 我使用颤振开发了我的应用程序 我的代码 class _ProfileScreenState extends State<ProfileScreen> { SharedPreferences sharedPreferences; String _email; final _scaffoldKey = new GlobalKey&

我需要在容器中显示JWT标记值。我尝试了很多方法返回值,声明一个全局变量,但都不起作用。当我声明一个全局变量时,它发送空值。我该怎么做? 我使用颤振开发了我的应用程序

我的代码

 class _ProfileScreenState extends State<ProfileScreen> {
      SharedPreferences sharedPreferences;

String _email;

  final _scaffoldKey = new GlobalKey<ScaffoldState>();
  @override
  void initState() {
    super.initState();
    checkLoginStatus();



  }
   checkLoginStatus() async {
    sharedPreferences = await SharedPreferences.getInstance();
    if(sharedPreferences.getString("token") == null) {
      Navigator.of(context).pushAndRemoveUntil(MaterialPageRoute(builder: (BuildContext context) => Login()), (Route<dynamic> route) => false);

  }
var token = sharedPreferences.getString("token");
var payload = Jwt.parseJwt(token);
print(payload);
print(payload["email"]);
 _email = payload["email"];
  print("Hello world");
  print(_email);
return _email;

   }
class\u ProfileScreenState扩展状态{
SharedReferences SharedReferences;
字符串\u电子邮件;
最终_scaffoldKey=新的GlobalKey();
@凌驾
void initState(){
super.initState();
checkLoginStatus();
}
checkLoginStatus()异步{
SharedReferences=等待SharedReferences.getInstance();
if(SharedReferences.getString(“令牌”)==null){
Navigator.of(context).pushandremoveintil(MaterialPageRoute(builder:(BuildContext context)=>Login(),(Route-Route)=>false);
}
var token=SharedReferences.getString(“token”);
var payload=Jwt.parseJwt(令牌);
打印(有效载荷);
打印(有效载荷[“电子邮件]);
_电子邮件=有效载荷[“电子邮件”];
打印(“你好世界”);
打印(电子邮件);
返回电子邮件;
}
我想将该电子邮件值发送到容器

我的集装箱部在这里

Widget build(BuildContext context) {
return Scaffold(
    floatingActionButton: FloatingActionButton(
      backgroundColor: Colors.redAccent[200],
      child: Icon(Icons.arrow_back),
      onPressed: () {
          sharedPreferences.clear();
          sharedPreferences.commit();
          Navigator.of(context).pushAndRemoveUntil(MaterialPageRoute(builder: (BuildContext context) => Login()), (Route<dynamic> route) => false);
        },
    ),
    backgroundColor: Color.fromRGBO(255, 255, 255, .9),
    body: SafeArea(
      child: ListView(
        children: <Widget>[
          Stack(
            children: <Widget>[
              Container(
                width: double.infinity,
                height: 330,
                color: Colors.blueAccent[200],
              ),
              Positioned(
                top: 10,
                right: 30,
                child: Icon(
                  Icons.settings, //setting Icon
                  color: Colors.white,
                ),
              ),
              Column(
                children: <Widget>[
                  Container(
                    height: 90,
                    margin: EdgeInsets.only(top: 60),
                    child: CircleAvatar(
                      radius: 50,
                      backgroundColor: Colors.white,
                      child: Icon(Icons.tag_faces),
                    )
                  ),
                  Padding(
                    padding: EdgeInsets.all(4),
                  ),
                  Text(
                     _email,  // here I call that variable
                    style: TextStyle(
                        color: Colors.white,
                        fontWeight: FontWeight.w500,
                        fontSize: 20,fontFamily: 'Montserrat'),
                    textAlign: TextAlign.center,
                  ),
小部件构建(构建上下文){
返回脚手架(
浮动操作按钮:浮动操作按钮(
背景颜色:Colors.redAccent[200],
子:图标(图标。箭头返回),
已按下:(){
sharedReferences.clear();
SharedReferences.commit();
Navigator.of(context).pushandremoveintil(MaterialPageRoute(builder:(BuildContext context)=>Login(),(Route-Route)=>false);
},
),
背景颜色:Color.fromRGBO(255、255、255、.9),
正文:安全区(
子:ListView(
儿童:[
堆叠(
儿童:[
容器(
宽度:double.infinity,
身高:330,
颜色:Colors.blueAccent[200],
),
定位(
前10名,
右:30,,
子:图标(
Icons.settings,//设置图标
颜色:颜色,白色,
),
),
纵队(
儿童:[
容器(
身高:90,
页边距:仅限边缘集(顶部:60),
孩子:圆环星(
半径:50,
背景颜色:Colors.white,
子:图标(图标、标记面),
)
),
填充物(
填充:边缘设置。全部(4),
),
正文(
_email,//这里我称之为变量
样式:TextStyle(
颜色:颜色,白色,
fontWeight:fontWeight.w500,
fontSize:20,fontFamily:‘蒙特塞拉特’,
textAlign:textAlign.center,
),
添加空检查

Text(
   _email == null || _email.isEmpty ?'Loading (or) nil' : _email,
   style: TextStyle(
       color: Colors.white,
       fontWeight: FontWeight.w500,
       fontSize: 20,fontFamily: 'Montserrat'),
       textAlign: TextAlign.center),

在该代码中,如果为null,则检查null显示加载(或)nil bud不显示该值。我想显示值bro..在初始化电子邮件时调用setState