40 lines
1.0 KiB
C#
40 lines
1.0 KiB
C#
using Microsoft.AspNetCore.Components;
|
|
using Microsoft.JSInterop;
|
|
|
|
namespace Front.Program.Views.Project;
|
|
|
|
public partial class TopProjectNav : ComponentBase
|
|
{
|
|
[Inject]
|
|
NavigationManager NavigationManager { get; set; } = default!;
|
|
|
|
[Inject]
|
|
IJSRuntime JS { get; set; } = default!;
|
|
|
|
protected bool isOpen = false;
|
|
protected bool isLoggedIn = false;
|
|
|
|
protected override async Task OnInitializedAsync()
|
|
{
|
|
// 쿠키에서 로그인 상태 확인
|
|
var isLoginCookie = await JS.InvokeAsync<string>("eval", "document.cookie.split('; ').find(row => row.startsWith('IsLogin='))?.split('=')[1]");
|
|
isLoggedIn = isLoginCookie == "true";
|
|
}
|
|
|
|
public void OnClickMenuDown()
|
|
{
|
|
isOpen = !isOpen;
|
|
}
|
|
|
|
public void OnClickRedirect()
|
|
{
|
|
if (isOpen) isOpen = !isOpen;
|
|
NavigationManager.NavigateTo("/about");
|
|
}
|
|
|
|
public void OnClickLogin()
|
|
{
|
|
if (isOpen) isOpen = !isOpen;
|
|
NavigationManager.NavigateTo("/auth");
|
|
}
|
|
} |