Javascript - 无法实例化 firebase-firestore

2 html javascript firebase google-cloud-firestore

尝试在网络上遵循 google 的Cloud Firestore 入门指南 - Firecasts

由于某种原因,我收到此错误:

未捕获的错误:无法实例化 firebase-firestore - 请务必先加载 firebase-app.js。

但我相信我已经完成了所有应该做的事情。这有什么问题?

HTML:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://www.gstatic.com/firebasejs/5.5.3/firebase.js"></script>
    <script src="https://www.gstatic.com/firebasejs/5.5.3/firebase-firestore.js"></script>

</head>
<body>

<h1 id="hotDogOutput">Hot dog status:</h1>
<input type="textfield" id="latestHotDogStatus">
<button id="saveButton">Save</button>
<script src="./app.js"></script>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Javascript

// Initialize Firebase
var config = {
    apiKey: "...",
    authDomain: "...",
    databaseURL: "...",
    projectId: "...",
    storageBucket: "...",
    messagingSenderId: "..."
};
firebase.initializeApp(config);

const firestore = firebase.firestore();
const settings = {/* your settings... */ timestampsInSnapshots: true};
firestore.settings(settings);

const docRef = firestore.doc("samples/sandwichData");

const outputHeader = document.querySelector("#hotDogOutput");
const inputTextField = document.querySelector("#latestHotDogStatus");
const saveButton = document.querySelector("#saveButton");

saveButton.addEventListener("click", function () {
    const textToSave = inputTextField.value;
    console.log("I am going to save " + textToSave + " to Firestore");
    docRef.set({
       hotDogStatus: textToSave
    }).then(function() {
        console.log("Status Saved!");
    }).catch(function(error) {
        console.log("Got an error: ", error)
    });

})
Run Code Online (Sandbox Code Playgroud)

Ste*_*ang 6

无论是导入整个firebase.js或只是firebase-app.js其次firebase-firestore.js。这里发生的是firebase-firestore.js期望firebase-app.js(核心 Firebase 客户端)而不是整个库。

<script src="https://www.gstatic.com/firebasejs/5.5.3/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.5.3/firebase-firestore.js"></script>
Run Code Online (Sandbox Code Playgroud)

有用的指南:https : //firebase.google.com/docs/web/setup


小智 5

如果您使用实时数据库,则仅添加这两个脚本 src:

<script src="https://www.gstatic.com/firebasejs/5.9.3/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.9.3/firebase-database.js"></script>
Run Code Online (Sandbox Code Playgroud)