
getReactNativePersistence는 React Native 환경에서 Firebase Auth의 로그인 세션을 유지할 수 있게 해주는 함수이다.
즉, 대부분의 앱에선 필수적인 기능을 담당한다고 볼 수 있는데,
사용을 위해 import하려고 보니 다음과 같은 문구가 떴다.
💡
'"firebase/auth"' 모듈에 내보낸 멤버 'getReactNativePersistence'이(가) 없습니다.ts(2305)
그런데 막상 적용해서 사용해보니 작동 자체는 잘 이루어지는 것이다…?
그럼 getReactNativePersistence 는 존재하지 않는 것이 아닌 “인식하지 못하는 것”이다.
typescript가 이를 제대로 인식하지 못해서 일어난 오류인 듯 하다.
ts를 expo 프로젝트에 적용해봤을 때, 지속적으로 path를 인식하지 못하는 오류가 발생했는데,
이 또한 비슷한 원인으로 발생하는 문제인 것이다.
@firebase/auth를 기본적으로 타입 모듈로 인식 못 함.tsconfig.json 파일을 다음과 같이 수정한다.
"compilerOptions": {
"paths": {
"@firebase/auth": ["./node_modules/@firebase/auth/dist/index.rn.d.ts"]
}
},
이러면 typescript가 해당 path를 통해 모듈을 인식하고, 제대로 처리할 수 있게 된다.