@page "/blog" @using TaxBaik.Application.Services @using TaxBaik.Domain.Interfaces @attribute [Authorize] @inject IBlogPostRepository BlogRepository @inject DialogService DialogService @inject Snackbar Snackbar 블로그 관리
📝 블로그 관리 새 포스트
수정 삭제 @code { private List posts = []; private bool isLoading = true; protected override async Task OnInitializedAsync() { await LoadPosts(); } private async Task LoadPosts() { isLoading = true; var (items, total) = await BlogRepository.GetPagedAsync(1, 100); posts = items.ToList(); isLoading = false; } private async Task TogglePublish(int postId, bool isPublished) { // TODO: Update publish status via service Snackbar.Add("발행 상태가 변경되었습니다.", Severity.Success); } private async Task DeletePost(int postId) { var confirmed = await DialogService.ShowAsync( "포스트 삭제", new DialogParameters { }, new DialogOptions { MaxWidth = MaxWidth.ExtraSmall }); var result = await confirmed.Result; if (!result.Canceled) { // TODO: Delete via repository await LoadPosts(); Snackbar.Add("포스트가 삭제되었습니다.", Severity.Success); } } }