Skip to content

Commit

Permalink
Create element reference inside $nextTick()
Browse files Browse the repository at this point in the history
Accessing `this.$refs.shareList` outside $nextTick()
 could lead to the holder (`listComponent`) being undefined
 as the ref is yet to exist.

Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
  • Loading branch information
nfebe committed Dec 6, 2023
1 parent f6b49b1 commit 06314a3
Showing 1 changed file with 6 additions and 7 deletions.
13 changes: 6 additions & 7 deletions apps/files_sharing/src/views/SharingTab.vue
Original file line number Diff line number Diff line change
Expand Up @@ -374,14 +374,13 @@ export default {
* @param {Function} resolve a function to execute after
*/
awaitForShare(share, resolve) {
let listComponent = this.$refs.shareList
// Only mail shares comes from the input, link shares
// are managed internally in the SharingLinkList component
if (share.type === this.SHARE_TYPES.SHARE_TYPE_EMAIL) {
listComponent = this.$refs.linkShareList
}

this.$nextTick(() => {
let listComponent = this.$refs.shareList
// Only mail shares comes from the input, link shares
// are managed internally in the SharingLinkList component
if (share.type === this.SHARE_TYPES.SHARE_TYPE_EMAIL) {
listComponent = this.$refs.linkShareList
}
const newShare = listComponent.$children.find(component => component.share === share)
if (newShare) {
resolve(newShare)
Expand Down

0 comments on commit 06314a3

Please sign in to comment.