Skip to content

Commit 3878a67

Browse files
committed
(fix) infinite loading after rooms refresh
1 parent 5b68398 commit 3878a67

File tree

1 file changed

+13
-6
lines changed

1 file changed

+13
-6
lines changed

src/lib/RoomsList/RoomsList.vue

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ export default {
105105
data() {
106106
return {
107107
filteredRooms: this.rooms || [],
108-
infiniteLoader: null,
108+
observer: null,
109109
showLoader: true,
110110
loadingMoreRooms: false,
111111
selectedRoomId: ''
@@ -133,6 +133,10 @@ export default {
133133
roomsLoaded(val) {
134134
if (val) {
135135
this.loadingMoreRooms = false
136+
137+
if (!this.loadingRooms) {
138+
this.showLoader = false
139+
}
136140
}
137141
},
138142
room: {
@@ -145,24 +149,27 @@ export default {
145149
146150
methods: {
147151
initIntersectionObserver() {
148-
const loader = document.getElementById('infinite-loader-rooms')
152+
if (this.observer) {
153+
this.showLoader = true
154+
this.observer.disconnect()
155+
}
149156
150-
if (loader && !this.infiniteLoader) {
151-
this.infiniteLoader = loader
157+
const loader = document.getElementById('infinite-loader-rooms')
152158
159+
if (loader) {
153160
const options = {
154161
root: document.getElementById('rooms-list'),
155162
rootMargin: '60px',
156163
threshold: 0
157164
}
158165
159-
const observer = new IntersectionObserver(entries => {
166+
this.observer = new IntersectionObserver(entries => {
160167
if (entries[0].isIntersecting) {
161168
this.loadMoreRooms()
162169
}
163170
}, options)
164171
165-
observer.observe(loader)
172+
this.observer.observe(loader)
166173
}
167174
},
168175
searchRoom(ev) {

0 commit comments

Comments
 (0)