Как я могу вернуть Future из обратного вызова прослушивания потока? - PullRequest
0 голосов
/ 05 мая 2020

У меня есть код ниже в flutter:

getData() {
  final linksStream = getLinksStream().listen((String uri) async {
     return uri;   
  });
}

В методе getData я хочу вернуть значение uri, которое получено из прослушивателя потока. Поскольку это значение создается позже, я думаю ответить на объект Future в методе getData. Но я не знаю, как передать uri как значение Future. В javascript я могу просто создать promise и resolve значение uri. Как я могу добиться этого в dart?

1 Ответ

0 голосов
/ 05 мая 2020

Попробуйте это

Future<String> getData() async{
  final linksStream = await getLinksStream().toList();
  return linksStream[0].toString();
}
...