Firebase Authの認証が永続化できません。
リロードするとサインアウトの状態になってしまいまうようで原因がわかりません。
Nuxt.jsのSPAモードでローカルで動かしています。
Firebaseの初期化コード
javascript
1import * as firebase from 'firebase/app' 2import 'firebase/auth' 3 4const firebaseConfig = { 5 apiKey: '', 6 authDomain: '', 7 databaseURL: '', 8 projectId: '', 9 storageBucket: '', 10 messagingSenderId: '', 11 appId: '', 12 measurementId: '' 13} 14 15if (!firebase.apps.length) { 16 firebase.initializeApp(firebaseConfig) 17} 18export const Firebase = firebase
認証まわりのコード
javascript
1export default 2 mounted: function() { 3 const user = Auth.currentUser 4 console.log('user: ' + user) 5 }, 6 methods: { 7 select: async function() { 8 await Firebase.auth().setPersistence(Firebase.auth.Auth.Persistence.LOCAL) 9 const provider = new Firebase.auth.TwitterAuthProvider() 10 const result = await Auth.signInWithPopup(provider) 11 console.log('result' + result) 12 } 13 } 14}
認証状態の永続性については下記のサイトを参考にしました。
https://firebase.google.com/docs/auth/web/auth-state-persistence?hl=ja
ログインのポップアップの後はログイン情報がコンソールに表示されるのでログイン自体に問題は無いと思うのですが、
リロードするとmountedで書かれているログはuser: nullとなってしまいログイン情報が取得できません。
あなたの回答
tips
プレビュー