Home.vueからGoogle認証を行うプログラムを書いています。
firebase.auth().onAuthStateChanged(function(user)) の返り値が、program.vueのgoogleLogin(Google認証)後も、nullになります。
未認証→Home.vueをレンダリングし、認証後はEditor.vueをレンダリングするようにしたいのですが、.onAuthStateChangedがGoogleログイン後もnullとなり認証ができません。
コンソールにエラーははいていないため、認証部分の根本的なロジックの誤りがあるのだと思っているのですが、原因がつかめません。どなたかわかりますでしょうか??
html
1#Home.vue 2<template> 3 <div> 4 <p>{{ message }}</p> 5 <button v-on:click="googleLogin">Google Login</button> 6 </div> 7</template> 8 9<script> 10import firebase from "firebase" 11 12 13export default { 14 name: "Home", 15 data() { 16 return { message: "here is Home" } 17 }, 18 methods: { 19 googleLogin: function() { 20 var provider = new firebase.auth.GoogleAuthProvider(); 21 firebase.auth().signInWithRedirect(provider); 22 } 23 } 24}; 25 26</script> 27
javascript
1#main.js 2Vue.config.productionTip = false 3 4var config = { 5apiKey: "", 6authDomain: "", 7databaseURL: "", 8projectId: "", 9storageBucket: "", 10messagingSenderId: "" 11}; 12firebase.initializeApp(config); 13 14 15/* eslint-disable no-new */ 16new Vue({ 17 el: '#app', 18 router, 19 components: { App, Home, Editor }, 20 data: { 21 mainMessage: "hello", 22 isLogin: false 23 }, 24 created: function() { 25 firebase.auth().onAuthStateChanged(function(user) { 26 27 if (user) { 28 console.log(user) 29 } else { 30 console.log(user) 31 } 32 }) 33 34 } 35})
あなたの回答
tips
プレビュー