본문 바로가기

Stream4

Flutter 플러터에서 'yield' 키워드는 무엇을 하는가요?, What does 'yield' keyword do in flutter? 질문 yield 키워드는 Dart에서 실제로 무엇을 하는가요? 답변 yield는 주변의 async* 함수의 출력 스트림에 값을 추가합니다. 이는 return과 유사하지만 함수를 종료하지 않습니다. https://dart.dev/guides/language/language-tour#generators을(를) 참조하세요. Stream asynchronousNaturalsTo(n) async* { int k = 0; while (k < n) yield k++; } yield 문이 실행되면, 표현식을 평가한 결과를 스트림에 추가합니다. 이는 필요에 따라 중단되지 않을 수 있습니다 (현재 구현에서는 중단됩니다). 2023. 6. 23.
Flutter 플러터 StreamBuilder 대 FutureBuilder, Flutter StreamBuilder vs FutureBuilder 질문 StreamBuilder와 FutureBuilder의 주요 차이점은 무엇인가요? 어떤 것을 언제 사용해야 하나요? 그들이 수행하려고하는 작업은 무엇인가요? 동적 목록에서 변경 사항을 각각 어떻게 수신하나요? 답변 StreamBuilder와 FutureBuilder는 모두 같은 동작을합니다. 그들은 각각의 객체에서 변경 사항을 듣습니다. 그리고 새로운 값이 통보되면 새로운 빌드를 트리거합니다. 그래서 결국 그들의 차이점은 그들이 듣는 객체가 작동하는 방식입니다. Future는 JS의 Promise 또는 c #의 Task와 같습니다. 그들은 비동기 요청의 표현입니다. Futures에는 하나의 응답만 있습니다. Future의 일반적인 사용법은 HTTP 호출을 처리하는 것입니다. Future에서 청취할 수.. 2023. 5. 30.
Flutter InitState 메소드에서 비동기 데이터를 로드하는 방법이 있나요?, Is there a way to load async data on InitState method? 질문 나는 InitState 메소드에서 비동기 데이터를 로드하는 방법을 찾고 있습니다. build 메소드가 실행되기 전에 일부 데이터가 필요합니다. GoogleAuth 코드를 사용하고 있으며 Stream이 실행될 때까지 build 메소드를 실행해야합니다. 내 initState 메소드는 다음과 같습니다: @override void initState () { super.initState(); _googleSignIn.onCurrentUserChanged.listen((GoogleSignInAccount account) { setState(() { _currentUser = account; }); }); _googleSignIn.signInSilently(); } 어떤 피드백이든 감사히 받겠습니다. 답변 당신.. 2023. 5. 15.
Flutter Dart에서 async와 async*의 차이점은 무엇인가요?, What's the difference between async and async* in Dart? 질문 저는 플러터 프레임워크를 사용하여 애플리케이션을 만들고 있습니다. 이 과정에서 Dart의 async와 async* 키워드를 만났습니다. 둘 사이에 차이가 무엇인지 알려주실 수 있는 분 계신가요? 답변 짧은 대답 async는 Future를 반환합니다. async*는 Stream을 반환합니다. async 시간이 오래 걸릴 수 있는 작업을 수행하는 함수에 async 키워드를 추가합니다. 이는 결과를 Future로 감싸 반환합니다. Future doSomeLongTask() async { await Future.delayed(const Duration(seconds: 1)); return 42; } Future를 기다려 결과를 얻을 수 있습니다: main() async { int result = await.. 2023. 5. 10.