在下面的代码中运行时出现这个 firebase 异常,当我尝试将数据添加到 firebase 数据库时,我在 React 应用程序中遇到了这个问题。
<块引用>例外: 未处理的拒绝 (FirebaseError):使用无效数据调用函数 DocumentReference.set()。不支持的字段值:未定义(在文档 users/zk97w62poVh62epn4atnXncOSKd2/orders/pi_1J1o7XSAf8PnDB2r8kkLLunf 中找到)
任何人都可以在这里帮助我! 有关控制台日志,请参阅下图。
'''
const handleSubmit = async(e) => {
e.preventDefault();
setProcessing(true);
const payload = await stripe.confirmCardPayment(clientSecret, {
payment_method: {
card : element.getElement(CardElement)
}
}).then(({paymentIntent}) => {
console.log(basket)
console.log(paymentIntent.amount)
console.log(paymentIntent.created)
const data = {
basket: basket,
amount: paymentIntent.amount,
created: paymentIntent.created
}
console.log(typeof(data))
console.log(data)
db
.collection("users")
.doc(user?.uid)
.collection("orders")
.doc(paymentIntent.id)
.set(data)
} ))
setSucceeded(true)
setError(null)
setProcessing(false)
dispatch({
type : "EMPTY_BASKET"
})
history.replace("/orders")
})
}
'''
答案 0 :(得分:0)
从错误消息来看,您的 data
对象中的一个值似乎是 undefined
。从屏幕截图来看,这很可能是在 basket
中。我建议使用 console.log(JSON.stringify(basket))
进行故障排除。