[英]Any event triggered after React component mounted in DOM?
如果我尝试做document.querySelector
为内做出反应组件内部的元素componentDidMount
,现在看来似乎并不保证它( componentDidMount
)其对DOM之后被调用。 结果是找不到元素
如果要访问DOM,是否应该使用某个事件代替? 将其附加到DOM之后?
解决方法是,我使用setTimeout
有更好的方法吗?
另一种方法是在您的componentDidMount方法中设置一些状态更改。 它会在组件上进行更新,并以绝对安装状态再次调用render方法。
像这样:
componentDidMount(){
this.setState({
isMounted: true
})
}
componentWillUpdate(nextProps, nextState){
if(nextState.isMounted){
// do something for your query selecting
}
}
componentWillUnmount(){
// do something else if you want
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.