using Microsoft.AspNetCore.Components; using Microsoft.AspNetCore.Components.Routing; using Front.Program.Views.Project; using Front.Program.Services; namespace Front.Program.Layout; public partial class MainLayout : LayoutComponentBase, IDisposable { [Inject] NavigationManager Navigation { get; set; } = default!; [Inject] LoadingService LoadingService { get; set; } = default!; // 경로의 시작 부분 // protected bool isHidePrjTop => Navigation.ToBaseRelativePath(Navigation.Uri).StartsWith("auth", StringComparison.OrdinalIgnoreCase); // 경로의 끝 부분 protected bool isHidePrjTop => Navigation.ToBaseRelativePath(Navigation.Uri).EndsWith("auth", StringComparison.OrdinalIgnoreCase); protected override void OnInitialized() { LoadingService.OnChange += StateHasChanged; Navigation.LocationChanged += HandleLocationChanged; } private void HandleLocationChanged(object? sender, LocationChangedEventArgs e) { LoadingService.HideNavigationLoading(); } public void Dispose() { LoadingService.OnChange -= StateHasChanged; Navigation.LocationChanged -= HandleLocationChanged; } }