ReactJS Redux道具地图



我几个月前开始了我的学习道路(html,css,js(,我有一个问题,我有反应(刚刚开始学习(。

我有一个错误说:data.map不是一个函数

我想用map遍历我的对象数组,并为每个循环将道具(标题、答案(分配给子对象,以列出不同的FaqComponent,每个FaqComponent都有{title和answer}

const data = useSelector(state => ({
...state.homePage.list
}))
console.log(data);
return (
<div>
{data.map((title, answer) => (
<FaqComponent
title={title}
answer={answer}
/>
))}
</div>
);
}
export default ...;

感谢您的回复

您使用的是对象{},而不是数组[]语法。

试用:

const data = useSelector(state => ([
...state.homePage.list
]));

您应该声明"数据";s类型,如果它是一个数组,那么你的函数应该是这样的:

const data = useSelector(state => ([
...state.homePage.list
]))
console.log(data);
return (
<div>
{(data && data.length > 0) ? data.map((item, i) => (
<FaqComponent
title={item.title}
answer={item.answer}
key={i}
/>)) 
: <div>No Result!...</div>}
</div>
);
}
export default ...;

最新更新