make with-load-more not use computeds when they don't work for it

This commit is contained in:
Shpuld Shpuldson 2020-12-28 17:08:15 +02:00
parent 2312f6c15a
commit 243383852b
2 changed files with 12 additions and 6 deletions

View File

@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
## [Unreleased]
### Fixed
- Follows/Followers tabs on user profiles now display the content properly.
## [2.2.2] - 2020-12-22
### Added

View File

@ -29,12 +29,8 @@ const withLoadMore = ({
return {
loading: false,
bottomedOut: false,
error: false
}
},
computed: {
entries () {
return select(this.$props, this.$store) || []
error: false,
entries: []
}
},
created () {
@ -48,6 +44,11 @@ const withLoadMore = ({
destroy && destroy(this.$props, this.$store)
},
methods: {
// Entries is not a computed because computed can't track the dynamic
// selector for changes and won't trigger after fetch.
updateEntries () {
this.entries = select(this.$props, this.$store) || []
},
fetchEntries () {
if (!this.loading) {
this.loading = true
@ -61,6 +62,9 @@ const withLoadMore = ({
this.loading = false
this.error = true
})
.finally(() => {
this.updateEntries()
})
}
},
scrollLoad (e) {