use-lazyload-ref
TypeScript icon, indicating that this package has built-in type declarations

0.1.4 • Public • Published

use-lazyload-ref

GitHub license npm version CI Status

Custom hook to use lazyload easily

Installation

$ npm install use-lazyload-ref
$ yarn add use-lazyload-ref

Usage

To enable lazy loading, simply specify ref and data-src attributes.

import React from 'react'
import useLazyloadRef from 'use-lazyload-ref'
 
const Component = ({ url }) => {
  const [ref, hasLoaded] = useLazyloadRef()
 
  return (
    <div>
      {hasLoaded || <Skeleton />}
      <img ref={ref} data-src={url} />
      {/* <audio ref={ref} data-src={url} />*/}
      {/* <iframe ref={ref} data-src={url} />*/}
      {/* <video ref={ref} data-src={url} />*/}
      {/* <div style={{ backgroundImage: `url(${url})` }}></div>*/}
    </div>
  )
}

API

useLazyloadRef: () => [(node: HTMLElement | null) => void, boolean]

Custom hook. In addition to src in audio, iframe, img and video, CSS property background-image can be lazy loaded.

const [ref, hasLoaded] = useLazyloadRef()

useLazyloadRef returns a callback ref function and a load state.

  • ref: Initialize observer for lazyload.
  • hasLoaded: Default is false. Turn true if the source has finished loading.

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i use-lazyload-ref

Weekly Downloads

15

Version

0.1.4

License

MIT

Unpacked Size

4.83 kB

Total Files

5

Last publish

Collaborators

  • saitoeku3