@inject IJSRuntime JS
@inject LocalizationService Loc
@code {
private bool isDark = false;
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
// JavaScript에서 현재 테마 가져오기
var theme = await JS.InvokeAsync("getTheme");
isDark = theme == "dark";
StateHasChanged();
}
}
private async Task ToggleTheme()
{
isDark = !isDark;
var newTheme = isDark ? "dark" : "light";
await JS.InvokeVoidAsync("setTheme", newTheme);
}
}