diff --git a/src/css/app.scss b/src/css/app.scss index 3dd154e..1c3dcf3 100644 --- a/src/css/app.scss +++ b/src/css/app.scss @@ -11,6 +11,11 @@ body { color: #3E92CC; } +// 토스트(Notify)가 상단 노치/상태바에 겹치지 않도록 safe-area 만큼 아래로. +.q-notifications__list--top { + padding-top: env(safe-area-inset-top); +} + // iOS 노치/홈바 safe-area 대응. // 네이티브 웹뷰가 이미 safe-area 아래로 배치돼(이중 여백 방지) CSS 추가 여백은 0. // (제목이 상태바에 겹치면 이 값을 소폭 늘린다) diff --git a/src/pages/LoginPage.vue b/src/pages/LoginPage.vue index 8f4e6d4..d5e2abe 100644 --- a/src/pages/LoginPage.vue +++ b/src/pages/LoginPage.vue @@ -198,8 +198,10 @@ function redirectAfterLogin() { } function notifyError(e: unknown) { - const message = e instanceof ApiError ? e.message : '로그인에 실패했습니다.' - $q.notify({ color: 'negative', message, icon: 'error', position: 'top' }) + let message = '로그인에 실패했습니다.' + if (e instanceof ApiError) message = e.message + else if (e instanceof Error && e.message) message = e.message // 네이티브 플러그인 오류 노출(진단용) + $q.notify({ color: 'negative', message, icon: 'error', position: 'top', timeout: 6000 }) }