Size: a a a

Flutter Developers — русскоговорящее сообщество

2020 April 11

AS

An Sh in Flutter Developers — русскоговорящее сообщество
По умолчанию создаётся только с поддержкой java
источник

AS

An Sh in Flutter Developers — русскоговорящее сообщество
Попробуй создать с параметром -a kotlin
источник

AS

An Sh in Flutter Developers — русскоговорящее сообщество
Друзья, подскажите, я запутался с асинхрощиной ((( вот есть 3 функции А, В, С все асинхронные. Надо ждать пока получу данные от А, передать из в В, потом ждать В и передать в С... Делаю через .then но он никогда не срабатывает...
источник

PS

Pavel Shilyagov in Flutter Developers — русскоговорящее сообщество
An Sh
Друзья, подскажите, я запутался с асинхрощиной ((( вот есть 3 функции А, В, С все асинхронные. Надо ждать пока получу данные от А, передать из в В, потом ждать В и передать в С... Делаю через .then но он никогда не срабатывает...
await
источник

AS

An Sh in Flutter Developers — русскоговорящее сообщество
Ага, он... мне надо дождаться результата А, передать его в В, дождаться В передать его в С
источник

AS

An Sh in Flutter Developers — русскоговорящее сообщество
так вот then(b) не срабатывает... и ошибок нет (((
источник

SS

Sergey Salnikov in Flutter Developers — русскоговорящее сообщество
An Sh
Ага, он... мне надо дождаться результата А, передать его в В, дождаться В передать его в С
await a
await b
await c

await a.then(b).then(c)
источник

AS

An Sh in Flutter Developers — русскоговорящее сообщество
есть рабочий пример? Читал что-то про Compliter, но не думаю что все так сложно
источник

AS

An Sh in Flutter Developers — русскоговорящее сообщество
в запустил в dartpad не получается
источник

AS

An Sh in Flutter Developers — русскоговорящее сообщество
import 'dart:async';

Future<String> a(String str) async {
 return str;  
}

Future<String> b(String str) async {
 return str+"b";  
}

Future<String> c(String str) async {
 return str+"c";  
}


void main() {
 String s;
 a("a").then((aRes) => b(aRes).then((bRes) => c(bRes).then((cRes) => s=cRes)));
 print(s);
}
источник

AS

An Sh in Flutter Developers — русскоговорящее сообщество
Результат - null
источник

ND

Nikita Domnickij in Flutter Developers — русскоговорящее сообщество
An Sh
Результат - null
Ну так заэвейти его
источник

ND

Nikita Domnickij in Flutter Developers — русскоговорящее сообщество
Ты пытаешься вывести переменную, не дождавшись пока ей значение присвоится
источник

PP

Pavel Pimenov in Flutter Developers — русскоговорящее сообщество
An Sh
import 'dart:async';

Future<String> a(String str) async {
 return str;  
}

Future<String> b(String str) async {
 return str+"b";  
}

Future<String> c(String str) async {
 return str+"c";  
}


void main() {
 String s;
 a("a").then((aRes) => b(aRes).then((bRes) => c(bRes).then((cRes) => s=cRes)));
 print(s);
}
void main() {
 a("a").then((aRes) => b(aRes).then((bRes) => c(bRes).then((cRes) => print(cRes))));
}
источник

PP

Pavel Pimenov in Flutter Developers — русскоговорящее сообщество
а лучше

void main async () {
 await a("a").then((aRes) => b(aRes).then((bRes) => c(bRes).then((cRes) => print(cRes))));
}
источник

ND

Nikita Domnickij in Flutter Developers — русскоговорящее сообщество
Ну или так, да
источник

EC

Evgeny Cherkasov in Flutter Developers — русскоговорящее сообщество
An Sh
import 'dart:async';

Future<String> a(String str) async {
 return str;  
}

Future<String> b(String str) async {
 return str+"b";  
}

Future<String> c(String str) async {
 return str+"c";  
}


void main() {
 String s;
 a("a").then((aRes) => b(aRes).then((bRes) => c(bRes).then((cRes) => s=cRes)));
 print(s);
}
print  надо вставить в последний then
источник

EC

Evgeny Cherkasov in Flutter Developers — русскоговорящее сообщество
Или использовать await вместо then
источник

AS

An Sh in Flutter Developers — русскоговорящее сообщество
Evgeny Cherkasov
print  надо вставить в последний then
Ага! Вдуплил!
источник

PP

Pavel Pimenov in Flutter Developers — русскоговорящее сообщество
или без then

void main async () {
 var aRes = await a("a");
 var bRes = await b(aRes);
 var cRes = await c(bRes);
 print(cRes);
}
источник