当前获取此错误:Uncaught TypeError: Cannot read property 'value' of null
我在下面的render函数中调用它:
<input type="submit" className="nameInput" id="name" value="cp-dev1" onClick={this.writeData}/>
我也试着打电话到这里
componentWillMount: function(){
var name = document.getElementById('name').value;
},
我如何获得输入文本字段的id并读取该值并确保它不为空?
我认为DOM是在我尝试读取元素之后加载的,因此它为null
3条答案
按热度按时间nwlls2ji1#
您需要在
componentDidMount
生命周期中拥有您的函数,因为这是在加载DOM时调用的函数。使用
refs
访问DOM元素有关如何访问React中的dom元素的更多信息,请参见此答案
kqlmhetl2#
你可能需要执行一个diff并把
document.getElementById('name')
代码放入一个条件中,如果你的组件是这样的:如果不执行diff,则会得到
null
。ig9co6j13#