如何在反应中动态获取宽度?

How to get width dynamically in react?

我正在尝试测量但不起作用。

 this.refs.tabla.measure(this._getWidth);

_getWidth(a,f,width,h,x,z){
  width = width + '';
  this.setState({width});
  console.log(width);

}

这是错误: index.js:20222 未捕获类型错误:this.refs.tabla.measure 不是函数

如果你有一个 ref 到元素,你可以做 this.refs.myelem.clientWidth (对于没有 CSS 或内联布局框的元素为零)或者更好 this.refs.myelem.getBoundingClientRect().width 不确定 measure 方法应该从哪里来。

记住 React 提供标准化的 DOM 实现会很有帮助,这意味着您通常可以像处理 "standard" 一样处理 React 事件和 DOM 元素Js DOM 节点和事件。 getBoundingClientRect 和 clientWidth 也可在标准 DOM 节点上使用,与 React 无关。