@implements IDisposable; @inject ISearchService searchService @if (searchService.IsVisible) { } @code { protected override void OnInitialized() { searchService.Subscribe(OnUpdate); } protected override async Task OnInitializedAsync() { await searchService.Load(); } public void Dispose() { searchService.Unsubscribe(OnUpdate); } void OnUpdate() { StateHasChanged(); } }