diff --git a/README.md b/README.md index 7ff5152..1ca3ead 100644 --- a/README.md +++ b/README.md @@ -81,6 +81,13 @@ npm run dev # 개발 서버 (http://localhost:5173) | marked 5 | Markdown → HTML 변환 | | tesseract.js| 이미지 OCR | +## 재빌드 +```bash +npm run build +npm run preview # http://localhost:4173 +``` + + ## 빌드 & 미리보기 ```bash nvm use 20 @@ -88,12 +95,6 @@ npm ci # (처음/의존성 변경 시 권장) 이미 설치돼 있으면 npm npm run build ``` -## 재빌드 -```bash -npm run build -npm run preview # http://localhost:4173 -``` - ## 프로덕션 배포 (Apache) 이 프로젝트는 기본적으로 API 호출을 `API_BASE_URL` 기준으로 수행합니다. diff --git a/src/App.jsx b/src/App.jsx index efe83d9..b1e89c1 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -58,7 +58,7 @@ export default function App() { lecture: , // community 제거 login: { handleNavigate('chat'); }} />, - ai_news: , + ai_news: , qna: , }; diff --git a/src/pages/AiNewsPage.jsx b/src/pages/AiNewsPage.jsx index 05fd612..c5c4bb7 100644 --- a/src/pages/AiNewsPage.jsx +++ b/src/pages/AiNewsPage.jsx @@ -17,7 +17,7 @@ function normalizeExternalUrl(raw) { return s; // leave as-is (could be relative path on same origin) } -export default function AiNewsPage() { +export default function AiNewsPage({ onNavigate }) { const { user } = useAuth(); const [news, setNews] = useState([]); const [newsOffset, setNewsOffset] = useState(0); @@ -116,6 +116,10 @@ export default function AiNewsPage() { const submitNews = async () => { if (!newsUrl.trim()) return; + if (!user) { + setNewsError('로그인 후 뉴스 등록이 가능합니다.'); + return; + } await fetch(`${API_BASE_URL}/community/ai_news`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, @@ -191,11 +195,20 @@ export default function AiNewsPage() { )} - {user && !showNewsEditor && ( + {!showNewsEditor && (