我有一个函数返回这个 jsx 与一些类似这样的代码:
showMedia = () => {
return (
<div>
{
<div id="mainContent">
{props.files.map((file) =>
const ext = fileExtension(file.name),
const icon = fileIcon(ext),
const isImg = isImage(ext),
<div key={file.id}>
<DisplayResults
fileId={file.id}
downloadName={file.downloadName}
fileTitle={file.title}
isImg={isImg}
icon={icon}
ext={ext}
/>
</div>
)}
</div>
}
</div>
);
}
在我的编辑器中,它表示我在 .map 之后设置的 const 变量需要一个“{”
我使用的语法不正确吗?
谢谢!
最佳答案
由于您的箭头函数没有函数体 {}
,因此它需要隐式返回的表达式。
给它一个函数体并声明变量并返回 JSX:
showMedia = () => {
return (
<div>
{
<div id="mainContent">
{props.files.map(file => {
const ext = fileExtension(file.name);
const icon = fileIcon(ext);
const isImg = isImage(ext);
return (
<div key={file.id}>
<DisplayResults
fileId={file.id}
downloadName={file.downloadName}
fileTitle={file.title}
isImg={isImg}
icon={icon}
ext={ext}
/>
</div>
);
})}
</div>
}
</div>
);
};
关于reactjs - 在 map 函数中设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51385644/