Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Memaparkan Penunjuk Pemuatan Semasa Panggilan API di Blazor?

Bagaimana untuk Memaparkan Penunjuk Pemuatan Semasa Panggilan API di Blazor?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-31 16:40:18538semak imbas

How to Display a Loading Indicator During API Calls in Blazor?

Petunjuk Pemuatan Paparan Semasa Panggilan API dalam Blazor

Apabila membuat panggilan API yang mungkin mengambil sedikit masa dalam Blazor, adalah penting untuk memberikan maklum balas kepada pengguna. Penunjuk yang biasa digunakan ialah kursor tunggu atau imej pemutar. Untuk mencapai matlamat ini dalam Blazor, beberapa pilihan tersedia.

Pilihan 1: Menggunakan Tugas. Kelewatan(1)

Kaedah ini melibatkan penggunaan tugas tak segerak dan panggilan menunggu Tugasan . Kelewatan(1); atau tunggu Task.Yield(); selepas setiap kemas kini UI. Ini mengepam perubahan dan membolehkan pemutar dipaparkan.

Pilihan 2: Menggunakan Task.Run() (Bukan untuk WebAssembly)

Pilihan ini melibatkan mencipta lama- menjalankan operasi dalam tugas menggunakan Task.Run(()=> LongOperation());. Ini menghalang urutan utama daripada disekat semasa operasi dijalankan.

Kesan Spinner pada Prapaparan Sisi Pelayan

Dalam apl Pelayan Blazor, di mana halaman diprapaparkan , pemutar tidak akan kelihatan melainkan operasi yang lama dilakukan dalam OnAfterRenderAsync. Menggunakan kaedah kitaran hayat ini dan bukannya OnInitializedAsync memastikan pemaparan sebelah pelayan tidak ditangguhkan.

Kod Contoh

// Don't do this
//protected override async Task OnInitializedAsync()
//{
//    await LongOperation();
//}

protected override async Task OnAfterRenderAsync(bool firstRender)
{
    if (firstRender)
    {            
        await Task.Run(()=> LongOperation());//<--or Task.Delay(0) without Task.Run
        StateHasChanged();
    }
}

Tambahan Sumber

  • [BlazorPro.Spinkit](https://github.com/EdCharbeneau/BlazorPro.Spinkit) menyediakan pustaka dengan kod sampel untuk mencipta spinner.

Atas ialah kandungan terperinci Bagaimana untuk Memaparkan Penunjuk Pemuatan Semasa Panggilan API di Blazor?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn