Я использую HTML-холст с React.js. Я хочу установить высоту моего холста равной высоте тела, чтобы люди могли рисовать на всей странице.
import IMG from "../../assets/img/contact-img.jpg";
constructor(props){
super(props);
this.state ={
width:0,
height:0
}
}
componentDidMount(){
let newState = {
width:this.myRef.current.getBoundingClientRect().width,
height:this.myRef.current.getBoundingClientRect().height
};
this.setState(newState);
}
render(){
<div>
<DrawableCanvas width={this.state.width} height={this.state.height}/>
<img src={IMG} />
</div>
}
Моя идея - сначала нарисовать холст (ширина, высота = 0). После рендеринга всего компонента макета мы можем получить высоту макета и обновить холст.
Проблема в том, что я не могу правильно определить высоту при наличии дочерних тегов.
Но я успешно получаю высоту в консоли Chrome. Похоже, что когда React выполняет рендеринг компонента, теги игнорируются.