2017-10-20 30 views
0

firebaseのfirebaseにfirebaseリアルタイムデータベースから単純なhtml/javascriptプロジェクトを移行しています。私はquickstartに続き、firebase-firestoreのライブラリを追加しました。しかしfirestoreを初期化しようとすると、'Uncaught TypeError:firebase.firestoreは関数ではありません。'Javascript - FirebaseをFirebase経由で初期化する際のエラー

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' 

答えて

0

firestoreのSDKがそれを主firebaseパッケージに含まれていません。あなたは、両方をインポートする必要があります。

import * as firebase from 'firebase' 

import 'firebase/firestore' 
+0

あなたの答えをありがとう。私は問題が私のエラーであることを発見しました。firebase-firestoreライブラリへの参照なしで別のhtmlからjsを呼び出しました。 –

0

答えは私がfirebaseのための1が含まれるように、ライブラリの参照を更新していなかった別のHTMLページからJavaScriptを呼んでいたということでした - ファイアストア。これが更新されたとき、ファイアストアの初期化は正常に機能しました。

関連する問題