用户未定义 firebase

User is not defined firebase

我正在尝试将对象推送到数组中,该数组保存到“用户”集合中的用户。我不断收到错误消息:Uncaught ReferenceError: user is not defined on this line db.collection('users').doc(user.uid).get().then(doc => {

代码

  // Your web app's Firebase configuration
  var firebaseConfig = {
    apiKey: "####",
    authDomain: "###.firebaseapp.com",
    projectId: "#",
    storageBucket: "#.appspot.com",
    messagingSenderId: "#",
    appId: "1:####"
  };
  // Initialize Firebase
  firebase.initializeApp(firebaseConfig);
  const auth = firebase.auth()
  const db = firebase.firestore()
  db.settings({ timestampsInSnapshots: true })

</script>
<script>
  function savetodb() {
    db.collection('users').doc(user.uid).get().then(doc => {
        const saveditems1 = doc.data().saveditems
        const ob = {
          Name:'Test',
          Price:'Test',
          Link:'https://www.test.com'
        }
saveditems1.push(ob)

    });

用户 已登录,所以我不确定为什么会出现此错误。

您应该在使用前初始化用户。

 // Your web app's Firebase configuration
  var firebaseConfig = {
    apiKey: "####",
    authDomain: "###.firebaseapp.com",
    projectId: "#",
    storageBucket: "#.appspot.com",
    messagingSenderId: "#",
    appId: "1:####"
  };
  // Initialize Firebase
  firebase.initializeApp(firebaseConfig);
  const auth = firebase.auth()
  const db = firebase.firestore()
  db.settings({ timestampsInSnapshots: true })

</script>
<script>
  function savetodb() {
    var user = firebase.auth().currentUser;
    db.collection('users').doc(user.uid).get().then(doc => {
        const saveditems1 = doc.data().saveditems
        const ob = {
          Name:'Test',
          Price:'Test',
          Link:'https://www.test.com'
        }
saveditems1.push(ob)

    });

您还没有声明用户变量。要么声明如下:

const user = firebase.auth().currentUser

如果您在其他任何地方都不需要用户对象,则直接将其作为参数传递:

.doc(firebase.auth().currentUser.uid)