You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

21 lines
406 B
JavaScript

"use strict";
const React = require("react");
module.exports = function useMemoizedPosition(element, extraDependencies = []) {
return React.useMemo(() => {
if (element != null) {
let rect = element.getBoundingClientRect();
return {
x: rect.left,
y: rect.top,
width: rect.width,
height: rect.height
};
} else {
return {};
}
}, [ element, ... extraDependencies ]);
};