我正在使用带有 React.js 的 html 画布。我想将我的画布高度设置为等于正文的高度,以便人们可以在整个页面上绘制。
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>
}
我的想法是先画一个画布(width,height=0)。整个布局组件渲染完成后,我们可以获取布局的高度并更新画布。
问题是当有子标签时我无法正确获得高度。但我成功地在 Chrome 控制台中获得了高度。似乎当 React 渲染组件时,标签被忽略了。