【发布时间】:2019-11-09 00:14:33
【问题描述】:
已修复:我错过了将 .current 添加到我的参考...
我需要知道将包含我的组件的元素的宽度:查看 SO,我找到了一个解决方案,但它对我不起作用(它返回未定义):
import React from 'react';
import './Badger.css';
export default function Badger(props) {
const refContainer = React.useRef(null);
React.useLayoutEffect(()=>{
// console.log(refContainer); I missed .current, now it works
console.log(refContainer.current); // Change the line to this
});
const items = props.items ? props.items : [];
return <div ref={refContainer}>{ items.join(", ") }</div>
}
本例中的父元素是一个 td:
<td>
<Badger
items={r.to}
listContainerWidth={recipientsWidth}
/>
</td>
但它 console.log 返回“未定义”。如何获取父元素?
【问题讨论】:
-
如果您解决了问题,欢迎您将其发布为答案并将您自己的解决方案标记为已接受(而不是作为对原始帖子的编辑)。
标签: javascript reactjs components