javascript - React.js 如何使用 getElementById 方法获取 props 中的 id?

标签 javascript html reactjs

最近开始学习React.js,遇到如下问题: enter image description here

我想使用 getElementById 获取 div 元素,但它不起作用并且控制台警告 can not read property 'props' of null。那么如何获取 div 元素呢?它困扰了我好几个小时。 谢谢。

最佳答案

React 的整体理念是您不访问 DOM,而是使用虚拟 DOM。

要实现您想要完成的目标(由于代码不完整,这有点不清楚),您需要使用 stateful component将用户输入存储在 this.state 上。查看this page在 React 表单上。

你会想要做这样的事情,你通过将它存储在组件上来跟踪用户输入:

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

    this.handleChange = this.handleChange.bind(this);
    this.handleSubmit = this.handleSubmit.bind(this);
  }

  handleChange(event) {
    this.setState({value: event.target.value});
  }

  handleSubmit(event) {
    alert('A name was submitted: ' + this.state.value);
    event.preventDefault();
  }

  render() {
    return (
      <form onSubmit={this.handleSubmit}>
        <label>
          Name:
          <input type="text" value={this.state.value} onChange={this.handleChange} />
        </label>
        <input type="submit" value="Submit" />
      </form>
    );
  }
}

关于javascript - React.js 如何使用 getElementById 方法获取 props 中的 id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45365231/

相关文章:

javascript - 如何在 map 功能中先跳过

javascript - 如何在给定的 Angular 应用程序中获取所有指令名称?

javascript - 如何使用 d3.js 在世界地图上绘制 3D 条形图?

javascript - 如果浏览器不支持 asp.net MVC 中的 javascript,则重定向到页面

javascript - 如何知道所选文本是否已填充父级?

javascript - 组件中每个元素的不同 handleChange() 函数? ( react

reactjs - React hook 等待上一个调用完成

javascript - 在性能明显下降之前,内存中的 JS 对象可以保存多少个 socket.io 对象?

html - 标题和描述标签中的重音

javascript - 在 Highcharts 漏斗可视化的左侧或右侧添加标签