无可否认,我正在学习react & jsx,但我无论如何也搞不懂为什么它不能渲染:
function generateItem(item){
return `<li><a href=${item.url}>${item.text}</a></li>`;
}
function MyList ({items}){
return (
<div className="list">
<ul>
{items.forEach(item => {
generateItem(item);
})}
</ul>
</div>
);
};
它的所有输出(当包含在我的应用程序中时)都是一个空列表:
<div class="list"><ul></ul></div>
我确信这是一些基本的和基本的东西。但我就在那里
发布于 2019-05-23 07:10:33
items.forEach
不返回任何内容...在jsx中,花括号中的东西最终会被转换为React.createElement调用中的参数,因此它们需要是一个表达式并返回值。(选中此处的transpiled version)
尝试使用items.map(item => generateItem(item))
或简单地使用items.map(generateItem)
。
下面是经过编辑的代码(我还将generateItem更改为返回jsx而不是字符串)
https://stackoverflow.com/questions/56266069
复制相似问题