颤振:不能将类型为"未来<String>"的值分配给类型为 'String' 的变量



我不明白如何导致一种类型我的功能:

Future<String> getToken(String login) async {
final data = await (select(authInfos)
..where((tbl) => tbl.login.equals(login)))
.getSingle();
return data.token;
}

错误行:

String token = myDatabase.authInfosDao.getToken(login);

对于返回未来结果的函数,您需要在调用它时放置await,以确保变量将获得所述函数的返回。

语法如下:

String token = await myDatabase.authInfosDao.getToken(login);

更新:

Future<void> initState() async {
// TODO: implement initState
String token = await myDatabase.authInfosDao.getToken(login);
super.initState();
}

注意:当使用await表达式时,它应该用于async函数。

相关内容

最新更新