【问题标题】:I have an unordered list of images, and I want to know which image was clicked (react)我有一个无序列表的图像,我想知道点击了哪个图像(反应)
【发布时间】:2021-05-27 01:55:33
【问题描述】:

我有一个无序列表的图片,我想知道点击了哪张图片

有没有办法不用jquery?

<div
    {this.props.icons.map((icon) => {
        return (
           <ul>
              <li>
                <img src={icon.url} alt=""></img>
                <p>{icon.name}</p>
              </li>
           </ul>
        )
    })}
</div>

这个图标数组是一个对象数组

    icons: [{
            id: 0,
            name: 'no-icon',
            url: 'https://img.icons8.com/color/48/000000/door-hanger.png'
        },
        {
            id: 1,
            name: 'bungee',
            url: 'https://img.icons8.com/color/48/000000/bungee-jumping.png'
        },
…..

我尝试了几件事,但我删除了它们,因为它们中的任何一个都有效

提前致谢

拉斐尔

【问题讨论】:

  • 你尝试了什么?你面临的问题是什么
  • 你不能为每个img 使用一个 onClick 处理程序吗,因为传递给你的处理程序的事件将识别是哪个节点触发了点击事件?

标签: javascript html reactjs react-redux jsx


【解决方案1】:

你已经有icon.id,只剩下添加onClick事件了:

<ul>
  {this.props.icons.map((icon) => {
    return (
      <li key={icon.id} onClick={() => console.log(icon.id)}>
        <img src={icon.url} alt=""></img>
        <p>{icon.name}</p>
      </li>
    );
  })}
</ul

【讨论】:

    猜你喜欢
    • 2011-12-23
    • 2018-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多