【发布时间】:2021-03-09 05:14:04
【问题描述】:
元素被创建并附加在表格中,我想找到特定元素的位置, 我用过 UseRef 钩子,
const inputRef = useRef(null);
动态创建的样子
return (
<td style={{ margin: "1rem", padding: "1rem" }}>
<Datetime
ref={inputRef}
closeOnSelect={true}
dateFormat="MMM yy"
timeFormat={false}
/>
</td>
);
}
在 UseEffect 钩子中看起来像
我尝试了 OffsetTop 和 getBoundingClientRect。两者都没有帮助
console.log(inputRef); //here no offsetTop is no there in current
//console.log(inputRef.current.getBoundingClientRect());
}, []);
outPut 在控制台中如下所示。
{current: n}
current: n
props: Object
context: Object
refs: Object
updater: Object
_renderCalendar: ƒ () {}
_showView: ƒ () {}
viewToMethod: Object
nextView: Object
_updateDate: ƒ () {}
_viewNavigate: ƒ () {}
_setTime: ƒ () {}
_openCalendar: ƒ () {}
_closeCalendar: ƒ () {}
_handleClickOutside: ƒ () {}
_onInputFocus: ƒ () {}
_onInputChange: ƒ () {}
_onInputKeyDown: ƒ () {}
_onInputClick: ƒ () {}
state: Object
_reactInternals: FiberNode
_reactInternalInstance: Object
isReactComponent: Object
setState: ƒ () {}
forceUpdate: ƒ () {}
<constructor>: "n"
如何获取当前ref元素的位置
我在沙盒中的代码:
【问题讨论】:
标签: javascript reactjs use-ref