firebase怎么用_firebase是什么

firebase怎么用_firebase是什么firebase文档:https://firebase.google.com/docs/auth/web/google-signin?hl=zh-cn以下代码中firebaseConfig参数从

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

firebase文档: https://firebase.google.com/docs/auth/web/google-signin?hl=zh-cn

以下代码中firebaseConfig 参数从如下获取
点击项目设置
点击常规
此处下面就是

import firebase from 'firebase/app'
import * as firebaseui from "firebaseui"
import "firebase/auth";
import "firebase/firestore";

export default {
  data() {
    return {
      ui: null,
      language: {
        zh_CN: 'zh_CN',
        en_US: 'en_US',
        hi_IN: 'hi_IN'
      },
      authTypeOption: {
        Google: 0,
        Facebook: 2,
        Twitter: 1
      },
      FirebaseTypeKey: 'FirebaseType'
    }
  },
  created() {
    this.FirebaseInte()
    this.getFirebaseRedirectResult()
  },
  mounted() {
    // this.getFirebaseRedirectResult()
  },
  methods: {
    FirebaseInte() { // 初始化
      if (!firebase.apps.length) {
        var firebaseConfig = {
          apiKey: "xxxxxxxxxxx",
          authDomain: "xxxxxxxxxxx",
          databaseURL: "xxxxxxxxxxx",
          projectId: "xxxxxxxxxxx",
          storageBucket: "xxxxxxxxxxx",
          messagingSenderId: "xxxxxxxxxxx",
          appId: "xxxxxxxxxxx",
          measurementId: "xxxxxxxxxxx"
        };
        // Initialize Firebase
        firebase.initializeApp(firebaseConfig);
        // UI初始化
        // this.ui = new firebaseui.auth.AuthUI(firebase.auth());
      }
    },
    FirebaseLogin(type) { // 登录
      // alert(type)
      var provider = null
      if (type === 'Google') provider = new firebase.auth.GoogleAuthProvider()
      if (type === 'Facebook') provider = new firebase.auth.FacebookAuthProvider()
      if (type === 'Twitter') provider = new firebase.auth.TwitterAuthProvider()
      if (!provider) return
      firebase.auth().languageCode = this.$Cookies.get('lang')
      window.sessionStorage.setItem(this.FirebaseTypeKey, type)
      // firebase.auth().languageCode = this.language[this.$Cookies.get('lang')]
      // firebase.auth().useDeviceLanguage()
      // provider.setCustomParameters({ 'lang': this.language[this.$Cookies.get('lang')] })
      // signInWithRedirect 为重定向
      firebase.auth().signInWithRedirect(provider)

      // signInWithPopup 为弹框形式登录
      // firebase.auth().signInWithPopup(provider).then(function(result) {
      //   // This gives you a Google Access Token. You can use it to access the Google API.
      //   var token = result.credential.accessToken;
      //   // The signed-in user info.
      //   var user = result.user;
      //   // ...
      // }).catch(function(error) {
      //   // Handle Errors here.
      //   var errorCode = error.code;
      //   var errorMessage = error.message;
      //   // The email of the user's account used.
      //   var email = error.email;
      //   // The firebase.auth.AuthCredential type that was used.
      //   var credential = error.credential;
      //   // ...
      // });
    },
    getFirebaseRedirectResult() { // 获取登录信息
      if (!firebase.apps.length) return
      firebase.auth().getRedirectResult().then((result) => {
        if (result.user) this.getUUID(result.user.uid)
        // The signed-in user info.
        var user = result.user;
      }).catch((error) => {
        // Handle Errors here.
        console.log(error)
        var errorCode = error.code;
        var errorMessage = error.message;
        // The email of the user's account used.
        var email = error.email;
        // The firebase.auth.AuthCredential type that was used.
        var credential = error.credential;
        // ...
      });
    },
    getUUID(uid) { // 获取UUID并获取用户信息
      //调用接口获取用户信息
    },
    FirebaseSignOut() { // 退出登录
      // console.log('执行退出')
      firebase.auth().signOut().then(function() {
        console.log('退出成功')
        firebase.clearPersistence() // 清除firebase缓存
        // Sign-out successful.
      }).catch(function(error) {
        // An error happened.
      });
    }
  }
}

/*
firebas 安装
npm install firebaseui --save
npm install --save firebase

firebas 使用
文档 https://firebase.google.com/docs/auth/web/google-signin?hl=zh-cn

firebas语言设置
参考: https://github.com/firebase/firebaseui-web/blob/master/LANGUAGES.md
ar	Arabic 阿拉伯
bg	Bulgarian 保加利亚
ca	Catalan 加泰罗尼亚
zh_cn	Chinese (Simplified) 中文(简体)
zh_tw	Chinese (Traditional) 中文(繁体)
hr	Croatian 克罗地亚
cs	Czech 捷克
da	Danish 丹麦
nl	Dutch 荷兰
en	English 英语
en_gb	English (UK) 英语(英国)
fa	Farsi 波斯语
fil	Filipino 菲律宾
fi	Finnish 芬兰
fr	French 法国
de	German 德国
el	Greek 希腊
iw	Hebrew 希伯来语
hi	Hindi 印地语
hu	Hungarian 匈牙利
id	Indonesian 印尼
it	Italian 意大利
ja	Japanese 日本
ko	Korean 韩国
lv	Latvian 拉脱维亚语
lt	Lithuanian 立陶宛语
no	Norwegian (Bokmal) 挪威语
pl	Polish 波兰
pt_br	Portuguese (Brazil) 葡萄牙语(巴西)
pt_pt	Portuguese (Portugal) 葡萄牙语(葡萄牙)
ro	Romanian 罗马尼亚
ru	Russian 俄罗斯
sr	Serbian 塞尔维亚
sk	Slovak 斯洛伐克
sl	Slovenian 斯洛文尼亚
es	Spanish 西班牙
es_419	Spanish (Latin America) 西班牙语(拉丁美洲)
sv	Swedish 瑞典
th	Thai 泰国
tr	Turkish 土耳其
uk	Ukrainian 英国乌克兰
vi	Vietnamese 越南
*/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168361.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MariaDB安装Win10

    MariaDB安装Win10本次搭建mysql数据,选择了是和mysql类似的MariaDB,完全可以满足日常的使用需求,且命令和mysql没有太大的区别。对应MariaDB下载地址:https://downloads.mariadb.org/解压下载完成的文件,这里我解压到了C盘,路径:C:\mariadb-10.5.3-winx64使用win+R,输入CMD,进入DOS控制台。输入命令cdC:\mariadb-10.5.3-winx64,进入MariaDB的对应的路径中执行安装的命令mysqld.exe–..

    2022年6月10日
    96
  • 12个Python程序员面试必备的问题与答案「建议收藏」

    本文列举了12个Python程序员面试必备的问题与答案,便于大家学习。例如:什么是pickling和unpickling、什么是Python的命名空间、*args,**kwargs?参数是什么、负索引是什么,等等。

    2022年1月18日
    147
  • 解决pycharm安装cv2模块无法安装的方法「建议收藏」

    解决pycharm安装cv2模块无法安装的方法「建议收藏」关于pycharm安装cv2模块安装失败和无法使用的解决办法:首先,我们先到这个网址:https://pypi.org/project/opencv-python/3.4.5.20/#files去下载与自己python版本号和电脑位数对应的opencv-python的whl文件,我这里是python3.6版本,对应电脑64位,所以我下载的是我这里是python3.6版本,对应电脑64位,所以我下载的是opencv_python-3.4.5.20-cp36-cp36m-win_amd64.whl。大家

    2025年6月7日
    3
  • 暴力破解工具-hydra使用「建议收藏」

    一、hydra简介:ydra(九头蛇),分布式任务处理系统,由社交标签服务提供商AddThis六年前开发,现在已得到Apache的开源许可,就像Hadoop一样,只是还没有Hadoop那样的知名度和声势。Hydra的创造者称,该“多头”平台非常擅长处理一些大的数据任务——对非常大的数据集进行实时处理。hydra是一款世界顶级密码暴力破解工具,支持几乎所有的协议的在线破解,功能强大,其密码…

    2022年4月9日
    307
  • navicat请求码无生成激活码【2021免费激活】「建议收藏」

    (navicat请求码无生成激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~0VOE…

    2022年3月31日
    426
  • 《哈佛大学公开课:幸福课》 学习笔记(1)

    《哈佛大学公开课:幸福课》 学习笔记(1)视频链接:http://v.163.com/special/sp/positivepsychology.html当初《幸福课》在网易公开课很火,当然现在也很火。但是由于对门户热门内容的成见,再加上一个江湖骗子式的课程名字,我还以为是又一个简单空洞的心灵鸡汤。但是今天看完了第一节课,事实告诉我,真是要相信群众的眼睛呀,而且随便怀疑哈佛出品也未免太过自信。70+分钟的时间内,没有多少废话,反复

    2022年7月18日
    16

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号