【问题标题】:Firebase auth not working using Vue and VuexFirebase 身份验证无法使用 Vue 和 Vuex
【发布时间】:2020-04-09 20:58:12
【问题描述】:

我正在尝试在我的 Vue 应用程序中使用 Firebase 添加身份验证,但出现 [Vue warn]: Error in v-on handler: "TypeError: _config_firebase__WEBPACK_IMPORTED_MODULE_8__.user.SignInWithEmailAndPassword is not a function" 错误。 这是我的 irebase 配置文件:

import firebase from "firebase/app";
import "firebase/firestore";
import "firebase/auth";

const firebaseConfig = {
  apiKey: "MY_API_KEY",
  authDomain: "MY_AUTH_DOMAIN",
  databaseURL: "MY_DB_URL",
  projectId: "MY_PROJECT_ID",
  storageBucket: "MY_STORAGE_BUCKET",
  messagingSenderId: "MY_MESSAGE_SENDER_ID",
  appId: "MY_APP_ID"
};

// Initialize Firebase
firebase.initializeApp(firebaseConfig);

// Get a Firestore instance
export const user = firebase.auth();
export const db = firebase.firestore();

然后是Vuex中的动作:

import { db, user } from "./config/firebase";

 loginUser({ commit }, payload) {
      user
        .SignInWithEmailAndPassword(payload)
        .then(user => {
          console.log(user);
          commit("SET_USER", user);
        })
        .catch(error => {
          commit("setLoading", false);
          commit("setError", error);
          console.log(error);
        });
      router.push("/");
    }

到目前为止,我已经能够创建、读取、更新和删除,尽管配置文件与此稍有不同,当我添加 auth 时是我更改代码的时候。

【问题讨论】:

    标签: javascript firebase vue.js firebase-authentication vuex


    【解决方案1】:

    改变这个:

    user.SignInWithEmailAndPassword(payload)
    

    进入这个:

    user.signInWithEmailAndPassword(payload)
    

    来自docs

    使用电子邮件和密码异步登录。

    【讨论】:

      猜你喜欢
      • 2017-09-24
      • 1970-01-01
      • 2021-09-01
      • 2023-03-05
      • 2018-05-22
      • 2019-12-20
      • 1970-01-01
      • 2018-11-27
      • 2018-02-04
      相关资源
      最近更新 更多