我在Nextjs(js)和Firebase上创建了一个应用程序.我增加了Stripe个扩展来创建订阅系统.我对firebase的新版本9不是很有经验,所以很难做到这一点,因为我遵循了一个使用版本8和ts的教程.我仍然设法使大多数事情都能正常工作,除了这个错误.
这是教程:https://youtu.be/P0Udy2Gi7n8?t=859(我14:19的问题)
I'm having the error here:
import getStripe from "./initializeStripe";
import { db } from '../firebase/firebaseClient'
import { doc, getDoc, addDoc, setDoc, setCol, onSnapshot, collection } from "firebase/firestore";
export async function createCheckoutSession(uid) {
const docData = {
price: "price_1KvNgoI6qyGEmrlgKU3miVmT",
success_url: window.location.origin,
cancel_url: window.location.origin,
};
const checkoutSessionRef = await setDoc(collection(db, "users", uid, "checkout_sessions"), docData); //ERROR
onSnapshot(getDoc(doc(checkoutSessionRef)), (snap) => {
const { sessionId } = snap.data();
if (sessionId) {
// We have a session, let's redirect to checkout
// Init Stripe
const stripe = getStripe();
stripe.redirectToCheckout({ sessionId })
}
});
错误如下:
Unhandled Runtime Error