From 06314a37c15ea90df47f295d8add6d1c3c8544cd Mon Sep 17 00:00:00 2001 From: fenn-cs Date: Wed, 6 Dec 2023 17:46:17 +0100 Subject: [PATCH] Create element reference inside $nextTick() 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 --- apps/files_sharing/src/views/SharingTab.vue | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/apps/files_sharing/src/views/SharingTab.vue b/apps/files_sharing/src/views/SharingTab.vue index 6ec8f25fcf6a5..19033bf9184d3 100644 --- a/apps/files_sharing/src/views/SharingTab.vue +++ b/apps/files_sharing/src/views/SharingTab.vue @@ -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)