@inject IToastService toastService @implements IDisposable @if (Toast == null) {
Add toast object...
} else {
@Toast.Title
@Toast.Message
} @code { [Parameter] public ToastModel? Toast { get; set; } private readonly float removalTime = 1300; private readonly float fadeoutTime = 1200; private float Opacity() { if (Toast!.Age < fadeoutTime) { return 1; } return 1.0f - (Toast.Age - fadeoutTime) / (removalTime - fadeoutTime); } protected override void OnInitialized() { base.OnInitialized(); toastService.Subscribe(OnUpdate); } void Dismiss() { toastService.RemoveToast(Toast!); } void IDisposable.Dispose() { toastService.Unsubscribe(OnUpdate); } void OnUpdate() { if (Toast!.Age > removalTime) { toastService.RemoveToast(Toast); } } }