Flutter/Dart - FutureBuilder bool 不返回 bool

Flutter/Dart - FutureBuilder bool not returning bool

我有一个由 ChangeNotifierProvider 提供的布尔值,它从 SharedPreferences 中获取 true 或 false。一旦用户登录,它应该更新为“true”。我从 FutureBuilder 调用这个布尔值。但是,我得到的不是正确的布尔值,而是 CircularProgressIndicator() 指示出了问题。这是代码;

Widget build(BuildContext context) {
        var socialProvider = Provider.of<SocialProvider>(context);
        return FutureBuilder<bool>(
          future: socialProvider.loadCurrentLogged(),
          builder: (context, snapshot){
            if(!snapshot.hasData) {
              return
                Column(
                  children: <Widget>[
                    Row(
                      children: <Widget>[
                        Consumer<SocialProvider>(
                          builder: (context, socialProvider, _) =>
                              Container(
                                child: new RaisedButton(
                                  onPressed: () {
                                    if (snapshot.data != true) {
                                      //Do something here.
                                    } else { // } //switch end
                                  }
                                 ),
                              ),
                           ),
                        ),
                      ],
                    ),
                  ],
                );
            } else {return
              Center(
                  child: CircularProgressIndicator()
              );
            }
          },
        );
      }

这是 ChangeNotifierProvider;

提供的未来
 Future<bool> loadCurrentLogged() async {
    SharedPreferences prefs = await SharedPreferences.getInstance();
    bool currentlogged = prefs.getBool('currentlogged') ;
    return currentlogged;
  }

怎么了?

哎呀!

if(!snapshot.hasData) 

应该是;

if(snapshot.hasData)

唉...