Reactjs 数据获取完成后,如何在数组中循环?

Reactjs 数据获取完成后,如何在数组中循环?,reactjs,Reactjs,我对反应有点陌生,我正在尝试在加载菜单项后循环浏览菜单项列表。我将state设置为empty,并设置了一个条件,使其仅在状态不为空时才开始使用.map()。但我一直得到类型错误:menu_items.map不是一个函数。 我知道它会被加载,因为当我执行console.log(菜单项)时,它会显示菜单项。 在这一点上我有点困惑。任何帮助都将不胜感激 import {useEffect} from 'react'; import {connect} from 'react-redux' import

我对反应有点陌生,我正在尝试在加载菜单项后循环浏览菜单项列表。我将state设置为empty,并设置了一个条件,使其仅在状态不为空时才开始使用.map()。但我一直得到类型错误:menu_items.map不是一个函数。 我知道它会被加载,因为当我执行console.log(菜单项)时,它会显示菜单项。 在这一点上我有点困惑。任何帮助都将不胜感激

import {useEffect} from 'react';
import {connect} from 'react-redux'
import {getMenu} from '../service/thunks'


const StoreMenu = ({loadMenu,match,menu_items}) => {

    useEffect(()=> loadMenu(match.params.id),[]);


if(menu_items !== "") {
    {
        menu_items.map(menu_item => console.log(menu_item.item_name))
    }
}
    return (<div> tesr</div>);


}

const  mapStateToProps = state => (

    {
        menu_items : state.menuItems

    }

)


const mapDispatchToProps = dispatch => (

    {

        loadMenu: (store_id) => dispatch(getMenu(store_id))

    }

)


export default connect(mapStateToProps,mapDispatchToProps)(StoreMenu);
从“react”导入{useffect};
从“react redux”导入{connect}
从“../service/thunks”导入{getMenu}
const StoreMenu=({loadMenu,match,menu items})=>{
useEffect(()=>loadMenu(match.params.id),[]);
如果(菜单项!==“”){
{
menu_items.map(menu_item=>console.log(menu_item.item_name))
}
}
返回(tesr);
}
常量mapStateToProps=状态=>(
{
菜单项:state.menuItems
}
)
const mapDispatchToProps=调度=>(
{
loadMenu:(store\u id)=>dispatch(getMenu(store\u id))
}
)
导出默认连接(mapStateToProps、mapDispatchToProps)(StoreMenu);
将代码修复为:

if (menu_items && menu_items.length > 0) {
    menu_items.map(menu_item => console.log(menu_item.item_name))
}
return ( 
   // Create JSX here.
);
将代码修复为:

if (menu_items && menu_items.length > 0) {
    menu_items.map(menu_item => console.log(menu_item.item_name))
}
return ( 
   // Create JSX here.
);

菜单项
不能是数组,因此没有
.map()
原型函数。你能和我核对一下吗?谢谢。这就是问题所在。它不是数组。
菜单项
不能是数组,因此没有
.map()
原型函数。你能和我核对一下吗?谢谢。这就是问题所在。这不是一个数组。