diff options
| author | Tusooa Zhu <tusooa@kazv.moe> | 2021-10-07 23:23:58 -0400 |
|---|---|---|
| committer | Tusooa Zhu <tusooa@kazv.moe> | 2022-09-18 13:19:51 -0400 |
| commit | c70cdbb873eb77bc1aaf7edb9defdda59bdba1e1 (patch) | |
| tree | 165a38505295386c74b4ec645093fc8e4987bb90 /src/components | |
| parent | 90f757cc6d9e1e29c2567979d3c27765f84cdc6c (diff) | |
Use lozad for lazy image loading
Ref: grouped-emoji-picker
Diffstat (limited to 'src/components')
| -rw-r--r-- | src/components/emoji_picker/emoji_picker.js | 6 | ||||
| -rw-r--r-- | src/components/emoji_picker/emoji_picker.vue | 3 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/components/emoji_picker/emoji_picker.js b/src/components/emoji_picker/emoji_picker.js index 8e11f83f..82e5ad0b 100644 --- a/src/components/emoji_picker/emoji_picker.js +++ b/src/components/emoji_picker/emoji_picker.js @@ -1,5 +1,6 @@ import { defineAsyncComponent } from 'vue' import Checkbox from '../checkbox/checkbox.vue' +import LazyImageContainer from '../../directives/lazy_image_container' import { library } from '@fortawesome/fontawesome-svg-core' import { faBoxOpen, @@ -64,6 +65,9 @@ const EmojiPicker = { StickerPicker: defineAsyncComponent(() => import('../sticker_picker/sticker_picker.vue')), Checkbox }, + directives: { + LazyImageContainer + }, methods: { onStickerUploaded (e) { this.$emit('sticker-uploaded', e) @@ -184,7 +188,7 @@ const EmojiPicker = { this.showingStickers = value }, limitedEmojis (list, groupId) { - return list.slice(0, this.loadedCount[groupId]) + return list // list.slice(0, this.loadedCount[groupId]) }, filterByKeyword (list, keyword) { return filterByKeyword(list, keyword) diff --git a/src/components/emoji_picker/emoji_picker.vue b/src/components/emoji_picker/emoji_picker.vue index 7b2b7fc8..0e6c7e41 100644 --- a/src/components/emoji_picker/emoji_picker.vue +++ b/src/components/emoji_picker/emoji_picker.vue @@ -62,6 +62,7 @@ </div> <div ref="emoji-groups" + v-lazy-image-container class="emoji-groups" :class="groupsScrolledClass" @scroll="onScroll" @@ -87,7 +88,7 @@ <span v-if="!emoji.imageUrl">{{ emoji.replacement }}</span> <img v-else - :src="emoji.imageUrl" + :data-src="emoji.imageUrl" > </span> <span :ref="'group-end-' + group.id" /> |
