Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Firestore onSnapshot-firebase.Firestore不是函数-解析模块说明符失败;firebase“;_Javascript_Firebase_Google Cloud Firestore - Fatal编程技术网

Javascript Firestore onSnapshot-firebase.Firestore不是函数-解析模块说明符失败;firebase“;

Javascript Firestore onSnapshot-firebase.Firestore不是函数-解析模块说明符失败;firebase“;,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,我只是想学习firebase,我想使用onSnapshot,所以从“实时数据库”切换到“firestore”。切换后,我复制了这个样板代码: document.addEventListener("DOMContentLoaded", evt=> { const app = firebase.app(); const db = firebase.firestore(); db.collection('users') .onSnapshot((snapshot) =>

我只是想学习firebase,我想使用onSnapshot,所以从“实时数据库”切换到“firestore”。切换后,我复制了这个样板代码:

document.addEventListener("DOMContentLoaded", evt=> {
  const app = firebase.app();
  const db = firebase.firestore();

  db.collection('users')
    .onSnapshot((snapshot) => {
      console.log(`Received doc snapshot: ${snapshot}`);
    }, (error) => {
      console.log(`Encountered error: ${error}`);
    });

});
但是我得到了“firebase.firestore不是一个函数”。我在这里找到了解决方案:只需添加:

import * as firebase from 'firebase';
import 'firebase/firestore';
但是,我得到:“uncaughttypeerror:解析模块说明符“firebase”失败。相对引用必须以“/”、“/”或“./”开头。”

编辑:还值得注意的是,我已将
添加到HTML文件中,错误仍然存在。

删除:

import * as firebase from 'firebase';
import 'firebase/firestore';
在我找到的stackoverflow帖子中,保持firestore链接似乎起到了作用。

删除:

import * as firebase from 'firebase';
import 'firebase/firestore';

从stackoverflow帖子中,我发现保留firestore链接似乎起到了作用。

出于某种原因,我不得不使用完整的URL,并将它们放在
标记的顶部,如下所示:

<body>
  <script src="https://www.gstatic.com/firebasejs/7.14.2/firebase-app.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.2/firebase-auth.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.2/firebase-database.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.2/firebase-messaging.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.2/firebase-storage.js"></script>

  <script src="app.js"></script>
</body>


我还必须使用Firebase CLI重新安装所有必需的东西。此后,它工作得非常好。

出于某种原因,我不得不使用完整的URL,并将它们放在
标记的顶部,如下所示:

<body>
  <script src="https://www.gstatic.com/firebasejs/7.14.2/firebase-app.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.2/firebase-auth.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.2/firebase-database.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.2/firebase-messaging.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.2/firebase-storage.js"></script>

  <script src="app.js"></script>
</body>

我还必须使用Firebase CLI重新安装所有必需的东西。从那以后,它工作得很好