Я хочу отправить данные в облачный пожарный магазин одним нажатием кнопки - PullRequest
0 голосов
/ 06 мая 2019

Я хочу добавить документ в коллекцию облачного пожарного хранилища при нажатии кнопки

Я могу добавить данные, используя следующее при загрузке страницы и не имея ее в качестве функции

Но по какой-то причине он не будет работать при попытке использовать кнопку onclick для вызова его как функции.

function addStudent(){

    const db = firebase.firestore();

       // Add a new document in collection "students"
        const student = db.collection("students").doc("BobJones");

        student.set({
            first_name: "Bob",
            last_name: "Jones",
            email: "jobesb@email.co.uk",
            completion_year: 2019,
            student_number: 1020
        })
        .then(function() {
            console.log("Document successfully written!");
        })
        .catch(function(error) {
            console.error("Error writing document: ", error);
        });
    };
 <button type="submit" class="btn btn-primary" onclick="addStudent()">
          Submit
        </button>

При запуске без использования кнопки и просто при загрузке страницы все работает нормально.

При использовании кнопки она не работает, я даже не получаю сообщение об ошибке, поэтому я не уверен, что щелчок запускается правильно?

Заранее спасибо:)

1 Ответ

0 голосов
/ 12 мая 2019

Мне удалось заставить это работать, используя Jquery, но время от времени, и я не могу понять, почему это не будет работать постоянно

Он будет работать один раз, затем, когда я изменю данные или даже изменю идентификатор документа, он не будет добавлять новые или обновлять документы. Однако, если я уйду на некоторое время или поменяю wifi и вернусь, он работает!?

Я пытался удалить кеш и т. Д., Но он все еще не работает

$( document ).ready(function(){

        //call the firebase.app namespace and store it to the the constant app
    const app = firebase.app();
    //log detail to console. 
    console.log(app);


        $("#submitform").click(function () {
            //allows data to be written to the database from a form

            // set the student to the detail outlined
            const db = firebase.firestore();
            //create or update the identified document
            let student = db.collection("students").doc("tommy").set({
                //pull the data from the form using jquery and update the database
                first_name: $("#addStudentFirstName").val(),
                last_name: $("#addStudentLastName").val(),
                DOB: $("#addStudentDOB").val(),
                completion_year: $("#addStudentCompletionYear").val(),
                student_number: $("#addStudentNumber").val(),
                student_email: $("#addStudentEmail").val()
                })
                .then(function() {
                    console.log("Document successfully written!");
                })
                .catch(function(error) {
                    console.error("Error writing document: ", error);
                });

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