Async/Await
🎯 Mục tiêu: Asynchronous programming với async/await.
💡 Cú pháp cơ bản
Phần tiêu đề “💡 Cú pháp cơ bản”Future<String> fetchData() async { await Future.delayed(Duration(seconds: 1)); return "Data loaded";}
void main() async { print("Loading..."); var data = await fetchData(); print(data);}📝 Error Handling
Phần tiêu đề “📝 Error Handling”Future<void> loadData() async { try { var data = await fetchData(); print(data); } catch (e) { print("Error: $e"); } finally { print("Done"); }}🔧 Parallel execution
Phần tiêu đề “🔧 Parallel execution”var results = await Future.wait([ fetchUsers(), fetchPosts(), fetchComments(),]);📱 Trong Flutter
Phần tiêu đề “📱 Trong Flutter”class MyWidget extends StatefulWidget { @override _MyWidgetState createState() => _MyWidgetState();}
class _MyWidgetState extends State<MyWidget> { String? data; bool isLoading = true;
@override void initState() { super.initState(); _loadData(); }
Future<void> _loadData() async { try { var result = await fetchData(); setState(() { data = result; isLoading = false; }); } catch (e) { setState(() => isLoading = false); } }}✅ Checklist
Phần tiêu đề “✅ Checklist”-
asynctrên function,awaitkhi gọi Future - Try-catch cho error handling
-
Future.waitcho parallel execution