Ответы пользователя по тегу JavaScript
  • Как решить проблему подключения firebase в nuxt.js?

    Данная проблема возникает из-за SSR. Если вы инициализируете Firebase в `plugins/`, то скрипт выполняется и на сервере и на клиенте.

    Мое решение:

    1. Инициализируем Firebase в файле `plugins/firebase`:

    import firebase from "firebase";
    
    const config = {
        apiKey: "...",
        authDomain: "...",
        databaseURL: "...",
        projectId: "...",
        storageBucket: "...",
        messagingSenderId: "..."
    };
    
    firebase.initializeApp(config);
    
    const db = firebase.database();
    
    export { db };


    2. В файле `nuxt.config.js`:

    /*
     ** Plugins
    */
    plugins: [
        { src: '~/plugins/firebase', ssr: false }
    ]


    Опция ssr: false отключает выполнение скрипта на стороне сервера


    3. Использование в компоненте

    import SectionHero from '~/components/sections/Hero.vue';
    import SectionAboutUs from '~/components/sections/AboutUs.vue';
    import { db } from '~/plugins/firebase.js';
    
    export default {
      components: {
        SectionHero,
        SectionAboutUs
      },
      methods: {
          addCar: function () {
            db.ref('cars/fiat').set({
              model: "Fiat Ducato",
              year: 2017,
              active: false
            });
          }
      }
    }
    Ответ написан
    Комментировать