diff --git a/app/assets/javascripts/issuable/popover/components/issue_popover.vue b/app/assets/javascripts/issuable/popover/components/issue_popover.vue
index 12d76ec4b548fb38bf5e3cfd8a161d6257b03f7c..236a0a947715b267583572de5aaf08d200894adf 100644
--- a/app/assets/javascripts/issuable/popover/components/issue_popover.vue
+++ b/app/assets/javascripts/issuable/popover/components/issue_popover.vue
@@ -64,7 +64,7 @@ export default {
   apollo: {
     issue: {
       query,
-      update: (data) => data.project.issue,
+      update: (data) => data.project?.issue || {},
       variables() {
         const { namespacePath, iid } = this;
 
diff --git a/app/assets/javascripts/issuable/popover/components/mr_popover.vue b/app/assets/javascripts/issuable/popover/components/mr_popover.vue
index 25a40f63de3e66802d07494869bcd5cbb7890587..dee7d8309e83c8ce50d7470888ad0ebfa18ebd55 100644
--- a/app/assets/javascripts/issuable/popover/components/mr_popover.vue
+++ b/app/assets/javascripts/issuable/popover/components/mr_popover.vue
@@ -74,7 +74,7 @@ export default {
   apollo: {
     mergeRequest: {
       query,
-      update: (data) => data.project.mergeRequest,
+      update: (data) => data.project?.mergeRequest || {},
       variables() {
         const { namespacePath, iid } = this;
 
diff --git a/app/assets/javascripts/vue_merge_request_widget/components/merge_checks.vue b/app/assets/javascripts/vue_merge_request_widget/components/merge_checks.vue
index 4578aa941cdcf502aee4c5d2ec4f7841707c59b6..976226328fcb83c70c26d7248807a625421963a9 100644
--- a/app/assets/javascripts/vue_merge_request_widget/components/merge_checks.vue
+++ b/app/assets/javascripts/vue_merge_request_widget/components/merge_checks.vue
@@ -100,7 +100,7 @@ export default {
       );
     },
     checks() {
-      return this.state.mergeabilityChecks || [];
+      return this.state?.mergeabilityChecks || [];
     },
     sortedChecks() {
       const order = ['FAILED', 'SUCCESS'];
diff --git a/app/assets/javascripts/vue_merge_request_widget/components/states/mr_widget_conflicts.vue b/app/assets/javascripts/vue_merge_request_widget/components/states/mr_widget_conflicts.vue
index d2c1c91402893385a40f43123c593ca9f8217097..244d2846bc611ec60fdcd29bc30d6992d7241037 100644
--- a/app/assets/javascripts/vue_merge_request_widget/components/states/mr_widget_conflicts.vue
+++ b/app/assets/javascripts/vue_merge_request_widget/components/states/mr_widget_conflicts.vue
@@ -22,7 +22,7 @@ export default {
       variables() {
         return this.mergeRequestQueryVariables;
       },
-      update: (data) => data.project?.mergeRequest.userPermissions || {},
+      update: (data) => data.project?.mergeRequest?.userPermissions || {},
     },
     state: {
       query: conflictsStateQuery,
diff --git a/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue b/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue
index af7453d84d637ec7dacf1919745413b15e1b7b3a..5b58f426cbeaa04554d0c4ab73ecb09c95de7c07 100644
--- a/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue
+++ b/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue
@@ -65,7 +65,7 @@ export default {
       },
       manual: true,
       result({ data }) {
-        if (!data.project) {
+        if (!data?.project?.mergeRequest) {
           return;
         }