Blazor and asynchronous lifetime repo.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

40 lines
1.4 KiB

using Microsoft.AspNetCore.Components;
using System;
using System.Threading.Tasks;
namespace blazor_lifetime.Pages
{
public class FirstLevelComponentAsyncModel : ComponentBase
{
protected string AsyncParameter { get; set; }
protected override async Task OnInitializedAsync()
{
Console.WriteLine($"{GetType().Name}.OnInitialized.Start");
await Task.Delay(500);
AsyncParameter = "value 123";
Console.WriteLine($"{GetType().Name}.OnInitialized.End");
}
protected override async Task OnParametersSetAsync()
{
Console.WriteLine($"{GetType().Name}.OnParametersSet.Start");
await Task.Delay(500);
Console.WriteLine($"{GetType().Name}.OnParametersSet.End");
}
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
Console.WriteLine($"{GetType().Name}.OnAfterRender(FirstRender).Start");
await Task.Delay(500);
Console.WriteLine($"{GetType().Name}.OnAfterRender(FirstRender).End");
} else
{
Console.WriteLine($"{GetType().Name}.OnAfterRender.Start");
await Task.Delay(500);
Console.WriteLine($"{GetType().Name}.OnAfterRender.End");
}
}
}
}