Reactjs 使用jest和enzymne测试自定义react挂钩时出错
当将自定义钩子与jest和enzymne一起使用时,我会遇到以下错误“TypeError:无法读取未定义的”属性“Symbol(Symbol.iterator)” 尝试了各种各样的事情,但似乎没有任何效果。请帮忙Reactjs 使用jest和enzymne测试自定义react挂钩时出错,reactjs,jestjs,react-hooks,Reactjs,Jestjs,React Hooks,当将自定义钩子与jest和enzymne一起使用时,我会遇到以下错误“TypeError:无法读取未定义的”属性“Symbol(Symbol.iterator)” 尝试了各种各样的事情,但似乎没有任何效果。请帮忙 import React, { useEffect, useState, Fragment } from 'react'; /* Utils */ import { useSystemContext } from '../../../utils/Context/SystemConte
import React, { useEffect, useState, Fragment } from 'react';
/* Utils */
import { useSystemContext } from '../../../utils/Context/SystemContextProvider';
/* Components */
import MenuStructure from './MenuStructure';
const Menu = () => {
const [{ siteData }] = useSystemContext();
const [open, setOpen] = React.useState(false);
const openMenu = () => {
setOpen(!open);
};
const componentProps = {
menuItems: siteData,
openMenu: openMenu,
open: open
};
return (
<MenuStructure {...componentProps} />
)
};
export default Menu;
根据请求添加了useSystemContext
import React, { createContext, useContext, useReducer } from 'react';
export const SystemContext = createContext();
export const SystemContextProvider = ({ reducer, initialState, children }) => (
<SystemContext.Provider value={useReducer(reducer, initialState)}>
{children}
</SystemContext.Provider>
);
export const useSystemContext = () => useContext(SystemContext);
import React,{createContext,useContext,useReducer}来自“React”;
export const SystemContext=createContext();
export const SystemContextProvider=({reducer,initialState,children})=>(
{儿童}
);
export const useSystemContext=()=>useContext(SystemContext);
这在站点运行时可以正常工作显示
useSystemContext
当然,这里是来自“React”的代码import React,{createContext,useContext,useReducer};export const SystemContext=createContext();export const SystemContextProvider=({reducer,initialState,children})=>({children});export const useSystemContext=()=>useContext(SystemContext)代码>请使用“编辑”按钮编辑您的问题,不要将其作为无法阅读的评论发布。对不起,我现在就添加它
TypeError: Cannot read property 'Symbol(Symbol.iterator)' of undefined
9 | import MenuStructure from './MenuStructure';
10 |
> 11 | const Menu = () => {
| ^
12 | const [{ siteData }] = useSystemContext();
13
import React, { createContext, useContext, useReducer } from 'react';
export const SystemContext = createContext();
export const SystemContextProvider = ({ reducer, initialState, children }) => (
<SystemContext.Provider value={useReducer(reducer, initialState)}>
{children}
</SystemContext.Provider>
);
export const useSystemContext = () => useContext(SystemContext);