lazy-child
Version:
React component that renders its child when it enters the viewport
3 lines (2 loc) • 904 B
JavaScript
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r(require("react"),require("react-peekaboo")):"function"==typeof define&&define.amd?define(["react","react-peekaboo"],r):(e=e||self).lazyChild=r(e.react,e.reactPeekaboo)}(this,function(e,r){var n="default"in e?e.default:e;function t(){return(t=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var n=arguments[r];for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t])}return e}).apply(this,arguments)}return function(a){var o=a.children,c=a.renderPlaceholder,i=function(e,r){if(null==e)return{};var n,t,a={},o=Object.keys(e);for(t=0;t<o.length;t++)r.indexOf(n=o[t])>=0||(a[n]=e[n]);return a}(a,["children","renderPlaceholder"]),l=e.useState(!1),u=l[0],f=r.useIntersectionChange(l[1],t({enabled:!u},i));return n.createElement(e.Fragment,null,u?o:c(f))}});
//# sourceMappingURL=index.umd.js.map