2017-10-20 59 views
0

我正在将一个简单的html/javascript项目从firebase实时数据库迁移到cloud firestore。我遵循quickstart并添加了firebase-firestore的库 - 但是当我尝试初始化firestore时,我得到'Uncaught TypeError:firebase.firestore不是函数'。快速启动中提到:Javascript - 通过Firebase初始化Cloud 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' 

回答

0

该公司的FireStore SDK不包括它的主火力包。您需要同时导入:

import * as firebase from 'firebase' 

import 'firebase/firestore' 
+0

感谢您的答案。我发现问题是我的错误 - 从另一个html调用js而没有引用添加的firebase-firestore库。 –

0

的回答是,我打电话从另一个HTML页面,在这里我还没有更新的库引用包括一个火力点的JavaScript -firestore。当这是更新的firestore db初始化工作正常..