ASP.NET Core Razor Pages индикатор загрузки во время async Task
Пытаюсь сделать свой сайт на ASP.NET Core с Razor Pages. Есть страница через которую пользователь обращается к API, обращение происходит через асинхронный Task. Так как ответ приходит не мгновенно я решил сделать индикатор загрузки во время ожидания ответа.
версия .NET 7.0
Изначально план был такой: Используя @if в .cshtml получаю значение переменной bool IsLoaderVisible, которая изменяется в файле .cs, если true то индикатор загрузки показывается.
CSHTML:
@if (Model.IsLoaderVisible)
{
<div class="loader-div">
<div class="loader"></div>
</div>
}
C#:
public async Task OnPostButtonClicked()
{
IsLoaderVisible = true;
// мой код
IsLoaderVisible = false;
}
Этот план потерпел неудачу. Прошелся с брейкпоинтами в режиме отладки и выяснил что страница обновляется только после выполнения метода, полагаю что javascript в это время тоже не активен, так как попытки включить индикатор загрузки с его помощью тоже провалились, либо я делал что то не так, с javascript у меня пока что все очень плохо.
Из этого возникает мой вопрос: Как я могу активировать индикатор загрузки во время выполнения асинхронного Task?