Для реализации ленивой загрузки в проекте на Vue.js можно использовать одну из двух популярных библиотек: vue-lazyload
или vue-lazyload-img
. Обе эти библиотеки предоставляют удобные инструменты для загрузки изображений и компонентов только тогда, когда они видимы на экране.
1. Установка библиотеки vue-lazyload
:
npm install vue-lazyload
2. Добавление библиотеки в проект:
import Vue from 'vue' import VueLazyload from 'vue-lazyload' Vue.use(VueLazyload)
3. Подключение ленивой загрузки изображений:
<template> <div> <img v-lazy="imageSrc" alt="Lazy-loaded image"> </div> </template> <script> export default { data() { return { imageSrc: 'path/to/your/image.jpg' } } } </script>
4. Подключение ленивой загрузки компонентов:
<template> <div> <component v-lazy="Component" /> </div> </template> <script> export default { data() { return { Component: () => import('path/to/your/component.vue') } } } </script>
Теперь изображения или компоненты, обернутые в директиву v-lazy
, будут загружаться только при прокрутке страницы и появлении на экране. Это уменьшает объем загружаемых данных и улучшает производительность приложения, особенно при работе со множеством больших изображений или сложных компонентов.