This package has been deprecated

Author message:

Please use nuxt-lazy-load instead

nuxt3-lazy-load
TypeScript icon, indicating that this package has built-in type declarations

1.0.9 • Public • Published

nuxt3-lazy-load

npm i nuxt3-lazy-load

npm version npm downloads npm downloads

👉 Description

You don't need to bother with extra attributes on elements (like data-src and data-srcset), just add the module in nuxt.config.js and that's it 😊

🚀 Usage

// nuxt.config.js (nuxt.config.ts)
modules: [
  'nuxt3-lazy-load'
]
// or
modules: [
  ['nuxt3-lazy-load', {
    // Your options
  }]
]

Buy me a coffee

ko-fi

directiveOnly

If you don't want to use lazy load on every image/video/audio/iframe, set directiveOnly to true and use directive like this (with data-src/data-srcset/data-poster)

<img data-src="image.png" alt="" title="" v-lazy-load>

You don't need to add directive (v-lazy-load) on source elements

<video data-poster="~/assets/images/poster.jpg" v-lazy-load>
  <source data-src="video.mp4" type="video/mp4"> --> without directive
</video>

data-not-lazy

If you don't want to lazy load single element, just add data-not-lazy attribute

<audio controls="controls" data-not-lazy>
  <source type="audio/mpeg" src="audio.mp3">
</audio>

🔧 Options

modules: [
  ['nuxt3-lazy-load', {
    // These are the default values
    images: true,
    videos: true,
    audios: true,
    iframes: true,
    native: false,
    directiveOnly: false,
    
    // Default image must be in the public folder
    defaultImage: '/images/default-image.jpg',

    // To remove class set value to false
    loadingClass: 'isLoading',
    loadedClass: 'isLoaded',
    appendClass: 'lazyLoad',
    
    observerConfig: {
      // See IntersectionObserver documentation
    }
  }]
]

Package Sidebar

Install

npm i nuxt3-lazy-load

Weekly Downloads

84

Version

1.0.9

License

MIT

Unpacked Size

13.9 kB

Total Files

10

Last publish

Collaborators

  • dario.ferderber