Firebase 및 Firebase를 갖춘 Nuxt 미들웨어UI: 오류: 네비게이션 가드를 통해 "/anything"에서 "/login"으로 이동할 때 방향 수정됨
Firebase를 사용하는 Nuxt SSR 앱인증 플로우를 처리하는 UI.로그인 및 로그아웃은 완벽하게 동작합니다.Middleware를 추가하여 인증 상태를 확인하고 로그인하지 않은 경우 수정하면 다음 오류가 나타납니다.
오류: 네비게이션가드를 통해 "/list-cheatsheets"에서 "/login"으로 이동할 때 방향 수정됩니다.
미들웨어/auth.model
export default function ({ store, redirect }) {
// If the user is not authenticated
if (!store.state.user) {
return redirect('/login')
}
}
앱에서 찾을 수 있는 다른 리다이렉트는 전혀 없습니다.
나는 몇 시간 동안 물건을 파헤치고 시도했다.이 에러가 발생한 다른 에러는 Nuxt를 사용하고 있지 않기 때문에, 어느 솔루션도 동작하지 않습니다.
현상금이 있으므로 중복으로 표시할 수 없으므로 후속 조치는 단일 Vue 내비게이션에서 두 번 리디렉션에 대한 답변 사본입니다.
tldr:vm.$router.push(route)
약속이고 할 필요가 있다.catch(e=>gotCaught(e))
에러입니다.
이것은 다음 메이저에서 변경됩니다@4
현재 @3 오류는 식별되지 않습니다.NavigationFailures
또는regular Errors
.
그 후 예상되는 순진한 루트vm.$router.push(to)
그래야 한다to
따라서 리다이렉트가 이루어지면 몇 가지 장애 메시지가 나타날 수 있습니다.라우터에 패치를 적용하기 전.push to be commends 이 오류는 묵살되었습니다.현재 해결책은 a를 차단하는 것이다..catch(...)
모든 푸시에 적용하거나 설계의 변화를 예측하고 결과적으로 실패를 드러내기 위해 랩을 감습니다.
향후 계획에서는 이러한 정보를 결과에 반영할 예정입니다.
let failure = await this.$router.push(to);
if(failure.type == NavigationFailureType[type]){}
else{}
이 에러는 설계상 발생한 것으로, 다음과 같이 처리해 주세요.
hook(route, current, (to: any) => { ... abort(createNavigationRedirectedError(current, route)) ...}
그러니까 기본적으로는to
리다이렉트가 포함되어 있습니다.이것은 에러이며, 사용하는 것과 같습니다.vm.$router.push
경비원으로서 말이야
처리되지 않은 오류 동작을 무시하려면 빈 onComplete(향후 릴리스의 브레이크)를 전달할 수 있습니다.
vm.$router.push(Route, ()=>{})
또는 에 싸서try .. catch
try {
await this.$router.push("/")
} catch {
}
두 번 리다이렉트하지 않고 이를 지원하는 것은 가드를 출구에 배치하는 것을 의미합니다.
let path = "/"
navguard({path}, undefined, (to)=>this.$router.push(to||path))
홈으로 리다이렉트하는 모든 컴포넌트를 폴리싱합니다.
를 제외하고router-link
컴포넌트가 빈 onComplete를 사용합니다.
언급URL : https://stackoverflow.com/questions/64447174/nuxt-middleware-with-firebase-and-firebaseui-error-redirected-when-going-from
'programing' 카테고리의 다른 글
SQLite3를 MySQL로 빠르게 마이그레이션하는 방법 (0) | 2022.10.02 |
---|---|
각 비트에 대해 0 또는 1의 확률로 의사 랜덤 비트를 생성하는 빠른 방법 (0) | 2022.10.02 |
Java 7 컴파일 코드를 Java 8로 업그레이드하면 어떤 이점이 있습니까? (0) | 2022.10.02 |
C에서 함수 포인터의 배열을 정의하는 방법 (0) | 2022.10.02 |
네트워크란?ERR_HTTP2_PROTOCOL_ERROR 정보 (0) | 2022.10.02 |