From ee6dfb0fe14cba4217947e06979ddf71c96378bb Mon Sep 17 00:00:00 2001 From: hex2077 Date: Mon, 25 Aug 2025 22:50:16 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E8=B0=83=E6=95=B4=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E6=A8=A1=E6=80=81=E6=A1=86=E6=B8=B2=E6=9F=93=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E5=92=8Cdocker-compose=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 将登录模态框的条件渲染移至hooks调用之后,确保路径处理完成 将docker-compose中的name字段改为container_name以符合最新语法规范 --- docker-compose.yml | 4 ++-- web/src/components/LoginModal.tsx | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 9d42fe7..ed52aee 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -12,7 +12,7 @@ services: - /opt/audio/output:/app/server/output - /opt/audio/sqlite.db:/app/web/sqlite.db restart: always - name: podcast-web + container_name: podcast-web depends_on: - server @@ -26,7 +26,7 @@ services: volumes: - /opt/audio/output:/app/server/output restart: always - name: podcast-server + container_name: podcast-server volumes: audio-data: \ No newline at end of file diff --git a/web/src/components/LoginModal.tsx b/web/src/components/LoginModal.tsx index 01b02c2..25d9c3b 100644 --- a/web/src/components/LoginModal.tsx +++ b/web/src/components/LoginModal.tsx @@ -30,10 +30,11 @@ const LoginModal: FC = ({ isOpen, onClose, lang }) => { [onClose] ); - if (!isOpen) return null; - const pathname = usePathname(); const truePath = getTruePathFromPathname(pathname, lang); + + if (!isOpen) return null; + // 使用 React Portal 将模态框渲染到 body 下,避免Z-index问题和父组件样式影响 return createPortal(