反应上下文给出未定义的对象

react context is giving undefined object

在我的 React 应用程序中,我尝试使用上下文 api。在我的组件中,我正在导入上下文,但它给出了对象无法解构 属性 的错误。我正在尝试在我的应用程序中实现购物车功能。我正在使用钩子。

ImgContext.js

import React, { createContext, useState } from 'react';

const ImgContext = createContext();

const ImgConProvider = ({children}) => {
    const [myCart, setMyCart] = useState([]);

    return(
    <ImgContext.Provider value={{myCart, setMyCart}}>
        {children}
    </ImgContext.Provider>
    )
}

export {ImgContext, ImgConProvider}

ImageGrid.js

import React, { useContext, useState } from 'react';
import ImageGrid from './ImageGrid';
import { ImgContext } from './Context/ImageContext';

const Home = () => {

    const { myCart } = useContext(ImgContext);

    return (
    <div className="App">
      {myCart}
    </div>
    )
}

export default  Home;

您在创建上下文时没有提供默认值。如果存在组件确实有权访问提供者的情况,则上下文中的值将是未定义的,这可能会导致问题。 最好提供一个默认值。

const ImgContext = createContext({});