Javascript 这是如何反应的元素';更新身高?
因此,我看到它生成了一个div元素,其中“textarea textarea--ghost”(非ghost textarea)作为一个类。我看到以下代码片段:Javascript 这是如何反应的元素';更新身高?,javascript,css,reactjs,Javascript,Css,Reactjs,因此,我看到它生成了一个div元素,其中“textarea textarea--ghost”(非ghost textarea)作为一个类。我看到以下代码片段: setFilledTextareaHeight() { if (this.mounted) { const element = this.ghost; this.setState({ height: element.clientHeight, }); } } 但这
setFilledTextareaHeight() {
if (this.mounted) {
const element = this.ghost;
this.setState({
height: element.clientHeight,
});
}
}
但这似乎只更新了类为“.textarea”的实际textarea框的高度。类为“textarea textarea--ghost”的“ghost”元素的高度是如何更新的?关于生命周期有什么我不明白的吗 这里没有魔法。正如JSFIDLE提到的:
使用重影div测量高度。
因此未设置重影高度。高度由内容的高度隐式指定
该程序的工作原理如下:
这个复杂的过程主要用于高度CSS转换,因为高度上的CSS转换不适用于
100%旧高度到100%新高度
,因此必须为转换提供明确的像素单位。。正如JSFIDLE提到的:
使用重影div测量高度。
因此未设置重影高度。高度由内容的高度隐式指定
该程序的工作原理如下:
这个复杂的过程主要用于高度CSS转换,因为高度上的CSS转换不适用于
100%旧高度到100%新高度
,因此必须为转换提供明确的像素单位
ref={(c)=>this.ghost=c}
{this.state.value}
这会改变鬼魂的高度onKeyUp
事件期间,setFilledTextareaHeight
方法使用参考this.ghost
,它是ghost div的DOM元素,以获取ghost div的高度,并将其设置为height
处于状态简而言之,ghost div根据在主文本区域中输入的值进行更改,然后将其高度应用于文本区域。情况如下
ref={(c)=>this.ghost=c}
{this.state.value}
这会改变鬼魂的高度onKeyUp
事件期间,setFilledTextareaHeight
方法使用参考this.ghost
,它是ghost div的DOM元素,以获取ghost div的高度,并将其设置为height
处于状态