Reactjs 在JavaScript中,cannot document.getElementById为null,即使元素位于DOM中

Reactjs 在JavaScript中,cannot document.getElementById为null,即使元素位于DOM中,reactjs,Reactjs,在React中,我使用了一个组件,它具有。当DOM加载组件时,在组件的componentDidMount()中,我将尝试搜索元素 componentDidMount(){ debugger; let ele = document.getElementById('location'); console.log('ele', ele) } componentDidMount(){ debugger; var Value = React.findDOMNode(

在React中,我使用了一个组件,它具有
。当DOM加载组件时,在组件的
componentDidMount()
中,我将尝试搜索元素

componentDidMount(){
    debugger;
    let ele = document.getElementById('location');
    console.log('ele', ele)
}
componentDidMount(){
    debugger;
   var Value = React.findDOMNode(this.refs.location).value;
    console.log('ele', ele)
}

<input type="text" ref="location" />
当它在
调试器
处中断时,我查看DOM(Chrome中的元素选项卡),上面的输入元素已经存在,但是
ele
在控制台中仍然为空

为什么??元素已经加载到DOM中,但我仍然找不到它?
谢谢

您的代码应该可以工作。但为什么要使用jquery方法呢
ReactDom.findNode
用于此。您可以添加
ref
来访问元素

componentDidMount(){
    debugger;
    let ele = document.getElementById('location');
    console.log('ele', ele)
}
componentDidMount(){
    debugger;
   var Value = React.findDOMNode(this.refs.location).value;
    console.log('ele', ele)
}

<input type="text" ref="location" />
componentDidMount(){
调试器;
var Value=React.findDOMNode(this.refs.location).Value;
console.log('ele',ele)
}