大家好,我有这段代码:
new ListTile(
title: new Text("Log In"),
leading: new Icon(Icons.account_box),
onTap: () => _signIn()
.then((FirebaseUser user) => print(user))
.catchError((e) => print(e)),
subtitle: StreamBuilder(
stream: FirebaseAuth.instance.onAuthStateChanged,
builder: (BuildContext context,
AsyncSnapshot<FirebaseUser> snapshot) {
if (snapshot.connectionState == ConnectionState.waiting) {
username = 'loading';
return Text(username);
} else if (!snapshot.hasData) {
username = 'you are not logged in';
return Text(username);
} else {
username = snapshot.data.displayName;
return Text(username);
}
},
),
),
我想用以下代码替换此代码,但我不知道如何正确实现它,以及可以使用哪个流或生成器可以帮助我
new ListTile(
title: new Text("Log In"),
leading: new Icon(Icons.account_box),
onTap: () => _signIn()
.then((FirebaseUser user) => print(user))
.catchError((e) => print(e)),
subtitle:
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
var username ='';
if (user != null) {
username=user;
return new Text(username)
} else {
username='you are not logged in'
}
},
),
),
这就是我想要的,谢谢