Javascript - Ошибка инициализации облачного хранилища файлов через Firebase
Я перевожу простой html / javascript проект из базы данных реального времени firebase в облачное хранилище. Я проследил за быстрым запуском и добавил библиотеку для firebase-firestore - но когда я пытаюсь инициализировать firestore, я получаю "Uncaught TypeError: firebase.firestore не является функцией". Быстрый старт упоминает:
const firebase = require("firebase");
// Required for side-effects
require("firebase/firestore");
... но я думаю, что это только если я использую npn, чтобы получить библиотеки, и не применяется?
Что мне не хватает?
index.html
<head>
<script src="https://www.gstatic.com/firebasejs/4.5.1/firebase.js"></script>
<script src="https://www.gstatic.com/firebasejs/4.5.1/firebase-firestore.js"></script>
<script src="./app.js" type="text/javascript"></script>
app.js
(function()
{var config = {
apiKey: "...",
authDomain: "...",
databaseURL: "...",
projectId: "...",
storageBucket: "...",
messagingSenderId: "..."
};
firebase.initializeApp(config);
var oldDB = firebase.database(); <-- THIS WORKS
// Initialize Cloud Firestore through Firebase
var newDB = firebase.firestore(); <-- 'Uncaught TypeError: firebase.firestore is not a function'
2 ответа
Ответ состоял в том, что я вызывал javascript с другой html-страницы, где я не обновил ссылки на библиотеку, чтобы включить ссылку для firebase-firestore. Когда это было обновлено, инициализация базы данных firestore работала нормально..
FireStore SDK не входит в основной пакет Firebase. Вам нужно импортировать оба:
import * as firebase from 'firebase'
а также
import 'firebase/firestore'