【发布时间】:2022-10-07 13:16:27
【问题描述】:
我有一个渲染输出,将我拥有的每个项目从数组映射到这样的 div
var renderedOutput = arr.map(item => <div key={item.portfolioName} style={portfolioStyle} onClick={handleClick}> {item.portfolioName} </div>)
虽然 div 中的 key={...} 和 style={...} 工作得很好, 使用 onClick={handleClick} 不行吗?我怎样才能解决这个问题?
这是我的其余代码:
export default function Sidebar(props){
var user = props.user
var arr = user.user.portfolios
const portfolioStyle = {
textAlign: \"left\",
border: \"1px\",
}
var renderedOutput = arr.map(item => <div key={item.portfolioName} style={portfolioStyle} onClick={handleClick}> {item.portfolioName} </div>)
const handleClick = e => {
alert(\'works\')
}
return (
<>
<div>
{renderedOutput}
</div>
</>
)
}
我希望创建的功能:对于数组中的每个项目,都会创建一行
- 投资组合的名称,单击时将您引导至相应页面
- 编辑按钮和删除按钮
现在,我只是在 div 的 handleClick 中设置了一个警报,以测试它是否有效。但是什么也没发生,handleClick 永远不会运行
-
handleClick怎么不起作用?您可以发布更多代码吗? -
它是类组件还是函数组件?并且需要更多代码,例如
handleClick方法 -
我将
handleClick移到renderedOutput上方,它对我有用。
标签: javascript reactjs jsx array.prototype.map