@wcdw3/lazy-render
Version:
uses react-intersection-observer to render components when they appear on the screen.
17 lines (13 loc) • 573 B
JavaScript
;
var React = require('react');
var reactIntersectionObserver = require('react-intersection-observer');
function LazyRender({ children, fallback, rootMargin, threshold = 0, forceView = false, triggerOnce = true }) {
const { ref, inView } = reactIntersectionObserver.useInView({
threshold,
rootMargin,
triggerOnce,
});
return inView || forceView ? (React.createElement(React.Fragment, null, children)) : (React.createElement("div", { ref: ref }, fallback));
}
module.exports = LazyRender;
//# sourceMappingURL=index.js.map