Cara Mendapatkan Nilai daripada Fungsi Async dengan Async-Await
Dalam JavaScript, memahami cara mengembalikan nilai daripada fungsi async adalah penting. Mari kita mendalami senario:
Senario:
Pertimbangkan coretan kod berikut:
1 2 3 4 5 6 |
|
Masalah:
Jika anda melaksanakan kod ini, anda akan menemui mesej "Janji {
Penyelesaian:
Untuk menangani isu ini, kami mesti mematuhi peraturan bahawa operasi tak segerak hanya perlu ditunggu dalam konteks tak segerak yang lain. Dalam kes kami, kami boleh mencapai ini dengan merangkum pernyataan console.log() dalam IIFE async (ungkapan fungsi yang digunakan serta-merta):
1 2 3 4 5 6 7 |
|
Ini memastikan bahawa pernyataan console.log() hanya dilaksanakan sebaik sahaja fungsi GetData() telah menyelesaikan operasi tak segeraknya dan mengembalikan data.
Sebagai alternatif:
Jika axios mengembalikan Promise, seperti yang berlaku dalam kod anda, kami boleh memudahkan kod dengan mengalih keluar async dan menunggu dari getData(). Kod itu kemudiannya menjadi:
1 2 3 4 5 6 7 |
|
Ini masih mencapai hasil yang sama dengan menunggu fungsi getData() dalam konteks tak segerak.
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nilai daripada Fungsi Async dengan Async-Await dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!