我有代码的那部分
const links = [
{
name: 'How it works',
ref: '/'
},
{
name: 'Calendar',
ref: 'calendar'
},
{
name: 'Contact me',
ref: 'contact'
}
];
const renderLinks = links.map((link, index) =>
<li className="nav-item active" key={index}>
<a className="nav-link" href={link.ref || "#"}>
{link.name}
</a>
</li>
);
但是当我尝试渲染它时会抛出错误。
render() {
return (
{renderLinks}
);
}
对象无效作为React子对象(找到:带键的对象) {renderLinks})。如果您要渲染一组孩子,请使用 而是一个数组。
我认为,我必须得到一个数组,但React认为有一个对象。
答案 0 :(得分:2)
React认为这是一个对象,因为你确实提供了一个对象。如果你在没有快捷方式属性表示法的情况下编写它就是这样的:
render() {
return {
renderLinks: renderLinks
);
}
直接在没有renderLinks
的情况下直接返回{ }
:
render() {
return renderLinks;
}