diff --git a/src/pages/blog-marketing/BlogMarketing.css b/src/pages/blog-marketing/BlogMarketing.css index 4ac6ae8..9b2e998 100644 --- a/src/pages/blog-marketing/BlogMarketing.css +++ b/src/pages/blog-marketing/BlogMarketing.css @@ -142,7 +142,7 @@ .bm-header h1 { font-size: 1.2rem; } .bm-status { display: none; } .bm-tab { padding: 6px 10px; font-size: 0.8rem; } - .bm-dash-cards { grid-template-columns: repeat(2, 1fr); } + .bm-dash-cards { grid-template-columns: 1fr; } .bm-research-form { flex-direction: column; } .bm-analysis-card__scores { gap: 10px; } .bm-write-actions { flex-direction: column; } diff --git a/src/pages/blog-marketing/BlogMarketing.jsx b/src/pages/blog-marketing/BlogMarketing.jsx index 131661c..e32a379 100644 --- a/src/pages/blog-marketing/BlogMarketing.jsx +++ b/src/pages/blog-marketing/BlogMarketing.jsx @@ -137,9 +137,7 @@ export default function BlogMarketing() { {tab === 'write' && } {tab === 'posts' && } - {tab === 'research' && ( - setTab('research')} label="키워드 분석" /> - )} + setTab('research')} label="키워드 분석" /> ); diff --git a/src/pages/blog/Blog.css b/src/pages/blog/Blog.css index 7978bba..6f7eaee 100644 --- a/src/pages/blog/Blog.css +++ b/src/pages/blog/Blog.css @@ -490,6 +490,13 @@ .blog-list.is-visible .blog-category-filter { margin-bottom: 8px; + overflow-x: auto; + -webkit-overflow-scrolling: touch; + flex-wrap: nowrap; + } + + .blog-list.is-visible .blog-category-filter > * { + flex-shrink: 0; } .blog-list.is-visible .blog-pagination { diff --git a/src/pages/subscription/Subscription.jsx b/src/pages/subscription/Subscription.jsx index 75dd36e..b4884b6 100644 --- a/src/pages/subscription/Subscription.jsx +++ b/src/pages/subscription/Subscription.jsx @@ -4,7 +4,6 @@ import { apiGet, apiPost, apiPut, apiDelete } from '../../api'; import { useIsMobile } from '../../hooks/useIsMobile'; import PullToRefresh from '../../components/PullToRefresh'; import FAB from '../../components/FAB'; -import MobileSheet from '../../components/MobileSheet'; import './Subscription.css'; // ── 상수 ─────────────────────────────────────────────────────────────────────── @@ -1302,19 +1301,18 @@ function ProfileTab() { function Subscription() { const isMobile = useIsMobile(); const [activeTab, setActiveTab] = useState(0); - const [filterSheetOpen, setFilterSheetOpen] = useState(false); + const [refreshKey, setRefreshKey] = useState(0); + + const handleRefresh = useCallback(async () => { + setRefreshKey(k => k + 1); + }, []); const handleFABClick = useCallback(() => { - if (activeTab === 0) { - // DashboardTab — open filter sheet or scroll to collect - setFilterSheetOpen(true); - } else { - setFilterSheetOpen(true); - } - }, [activeTab]); + setActiveTab(1); // 공고 목록 탭으로 이동 + }, []); return ( - {}, [])}> +
{/* Header */}
@@ -1344,42 +1342,13 @@ function Subscription() { {/* Body */}
- {activeTab === 0 && } - {activeTab === 1 && } - {activeTab === 2 && } - {activeTab === 3 && } + {activeTab === 0 && } + {activeTab === 1 && } + {activeTab === 2 && } + {activeTab === 3 && }
- setFilterSheetOpen(false)} - title="필터" - snap="half" - > -
-

- 탭을 선택하여 원하는 화면으로 이동하세요. -

- {TABS.map((tab, i) => ( - - ))} -
-
- - +
); diff --git a/src/pages/todo/Todo.jsx b/src/pages/todo/Todo.jsx index 1a0b65b..c1d66f2 100644 --- a/src/pages/todo/Todo.jsx +++ b/src/pages/todo/Todo.jsx @@ -260,7 +260,7 @@ const Todo = () => { className="button primary" onClick={() => setFormOpen((v) => !v)} > - {formOpen ? '취소' : '+ 태스크 추가'} + {formOpen ? '취소' : '+ 할일 추가'}
);