我正在用Vue&Firebase创建一个电子商务。尝试从当前登录用户添加一些购物车信息。奇怪的是,信息在第一时间就完美地保存了下来。当我尝试再次添加一些时。那个有效的方法并显示出此错误。
未捕获的FirebaseError:函数DocumentReference.set()调用了无效的数据。不支持的字段值:未定义
所以我必须刷新该页面。然后它再次工作。我不明白问题出在哪里。
注意:如果我尝试添加其他值而不是购物车。然后就可以了。
checkoutLoggedInUser(){
var db = firebase.firestore();
var user = firebase.auth().currentUser;
db.collection("orders").add({
user_id:user.uid,
cart:this.$store.getters.cart
})
this.$store.commit('emptyCart')
this.$router.push({ name: 'Home'})
}
答案 0 :(得分:0)
该错误消息表示您要写入文档的字段之一是JavaScript中的undefined
。通过使用console.log或调试器来检查要传递的值,以找出未定义的值,然后更改代码以传递其他值,或完全省略该字段。
还请记住,错误消息引用了对DocumentReference.set()
的调用,但是您显示的代码正在调用DocumentReference.add()
,因此错误可能在其他位置。