弗拉特的未来字符串

Shr*_*eya 11 android flutter

所以我有一个函数返回一个未来的值.当这个函数执行时,我想从未来提取字符串.我该怎么做?

Future<String> coverImage(id, space) {
  String link = 'https://cdn.contentful.com/spaces/$space/assets/$id?access_token=1d4932ce2b24458e85ded26532bb81184e0d79c1a16c5713ec3ad391c2e8f5b3';
  return http.get(link).then((response) => decodeToImage(decodeJson(response.body)));   
}
Run Code Online (Sandbox Code Playgroud)

这个函数返回Future<String>,我想在使用图像小部件时提取到字符串

Gün*_*uer 21

Future someMethod() async {
  String s = await someFuncThatReturnsFuture();
}
Run Code Online (Sandbox Code Playgroud)

要么

someMethod() {
  someFuncTahtReturnsFuture().then((s) {
    print(s);
  });
}
Run Code Online (Sandbox Code Playgroud)

没有办法从异步(未来)转到同步执行. async/ await只是语法糖,使代码看起来更像同步代码,但正如你在我的第一个例子中看到的,someMethod将返回a Future,如果你想s在调用网站上使用字符串,你必须使用async/ awaitthen()那里.