Почему firebase.database () выдает ошибку? - PullRequest
0 голосов
/ 14 марта 2020

Я пытался создать простое веб-приложение, которое использует базу данных Firebase, но после обучения я получаю сообщение об ошибке let database = firebase.database().

В сообщении об ошибке указано, что firebase.database is not a function.

Я также пытался удалить переменную и напрямую поместить firebase.database() туда, где мне нужно ее вызвать, но это также приводит к той же ошибке.

Я не нашел других способов в Интернете чтобы решить эту проблему, несмотря на просмотр документации Firebase.

Как я могу решить эту проблему? Спасибо!

Мой код (некоторые детали удалены):

<html>

    <head></head>

    <body>

        <!-- The core Firebase JS SDK is always required and must be listed first -->
        <script src="https://www.gstatic.com/firebasejs/7.11.0/firebase-app.js"></script>

        <!-- TODO: Add SDKs for Firebase products that you want to use
     https://firebase.google.com/docs/web/setup#available-libraries -->
        <script src="https://www.gstatic.com/firebasejs/7.11.0/firebase-analytics.js"></script>

        <script>
        // Your web app's Firebase configuration
        var firebaseConfig = {
            apiKey: "AIza***********************************",
            authDomain: "databasetest-db3.firebaseapp.com",
            databaseURL: "https://databasetest-db3.firebaseio.com",
            projectId: "databasetest-db3",
            storageBucket: "databasetest-db3.appspot.com",
            messagingSenderId: "9472********",
            appId: "1:947************************************",
            measurementId: "G-EZ9*******"
        };

        // Initialise Firebase
        firebase.initializeApp(firebaseConfig);
        firebase.analytics();
        let database = firebase.database()

        function writeData() {
            database.ref("User").set({
                name: document.getElementById("nameField").value,
                age: document.getElementById("ageField").value,
            })
        }
        </script>
        <h1>User Database</h1>
        <input type="text" placeholder="name" id="nameField">
        <input type="text" placeholder="age" id="ageField">
        <button onclick="writeData()">Submit</button>

    </body>

</html>

Редактировать: код скопирован и вставлен вместо изображения

1 Ответ

0 голосов
/ 14 марта 2020

Поскольку вы используете базу данных реального времени, вам необходимо добавить следующий скрипт, чтобы иметь возможность использовать sdk:

<script src="https://www.gstatic.com/firebasejs/7.11.0/firebase-database.js"></script>

См. Соответствующий do c для более подробно, в частности, почему недостаточно только добавить базовую библиотеку Firebase (например, firebase-app.js).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...