javascript - React - 如何访问数据集值

标签 javascript reactjs

我正在渲染年份列表(2017、2018、2019 ..等)

我正在尝试 console.log 年份值

   <a href="#" onClick={() => console.log(event.target.getAttribute('data-year'))} data-year={year}>{year}</a>

我已经尝试了 getAttribute 但一直得到“undefined”

event.target.getAttribute('data-year')

https://jsfiddle.net/69z2wepo/83227/

有什么想法吗?

最佳答案

尝试使用数据属性和 event.target.dataset.value:

class ControlText extends React.Component {
  constructor(props){
    super(props);
    this.state = {
      value: ""
    };
  }

  update(event) {
    console.log(event);
    this.setState({value: event.target.dataset.value});
  }

  render() {
    console.log(this.state);
    var value = this.state.value;
    return <a type="text" data-value={2017} onClick={this.update.bind(this)} > 2017 </a>
  }
}

ReactDOM.render(
  <ControlText />,
  document.getElementById('container')
);

工作示例:https://jsfiddle.net/rejee84L/

关于javascript - React - 如何访问数据集值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45221273/

相关文章:

javascript - TypeError (Jest Test) 为什么这个测试会失败?错误说函数不是函数

javascript - 如何将 HTML 页面添加到 React 应用程序

javascript - 隐藏/显示图像按钮 JS

Javascript:切换按钮无法正常工作

对象上的 Javascript 在 DataTable 行中不起作用

javascript - React-Intl 如何从变量切换语言环境和消息

javascript - 从相位器 Canvas 获取高度和宽度

javascript - 使用 JSON 文件动态更新 HTML 内容?

javascript - 使用正则表达式和 Yup 来验证仅包含扩展拉丁字母和至少 2 个单词的全名

javascript - 使用 react 中的历史推送重定向用户