我正在使用条纹API和使用购物车的电子商务网站,但我遇到了这个错误,我似乎无法弄清楚,如果我用CartProvider Package 了一个页面,那么这个页面就可以使用购物车,但是我试图在整个应用程序中全局使用它。所以我用CartProvider Package 了整个应用程序,但是现在我收到了这个错误。我已经通读了use-shopping-cart文档,但是不能'我找不到解决办法。
- 相关代码-
_app.tsx
import "../styles/globals.css";
import type { AppProps } from "next/app";
import { CartProvider, DebugCart } from "use-shopping-cart";
import * as config from "../config";
import { ReactNode } from "react";
const Cart = ({ children }: { children: ReactNode }) => (
<CartProvider
cartMode="checkout-session"
stripe={process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY as string}
currency={config.CURRENCY}
shouldPersist={false}
>
<>{children}</>
</CartProvider>
);
export default function App({ Component, pageProps }: AppProps) {
return (
<Cart>
<Component {...pageProps} />
</Cart>
);
}
这是可行的,但仅适用于这一页
"use client";
import { NextPage } from "next";
import Cart from "./Cart";
import CartSummary from "./CartSummary";
import Products from "./Products";
const Checkout: NextPage = () => {
return (
<div>
<Cart>
<CartSummary />
<Products />
</Cart>
</div>
);
};
export default Checkout;
我被卡住了,任何帮助将不胜感激。我得到这个错误,当我尝试和使用useShoppingCart整个应用程序添加,删除产品和结帐。当我只在一个页面中这样做,它的作品,但我需要在整个应用程序中使用这个。
1条答案
按热度按时间3pmvbmvn1#
结果是,为了在接下来的13中使用全局变量,您需要首先创建您的提供程序文件,将其标记为客户端组件,然后 Package 您的布局文件。
--布局--