diff --git a/modules/views/src/Plugin/views/field/EntityField.php b/modules/views/src/Plugin/views/field/EntityField.php
index ee2882c3b5..ba6cb3a8e3 100644
--- a/modules/views/src/Plugin/views/field/EntityField.php
+++ b/modules/views/src/Plugin/views/field/EntityField.php
@@ -337,11 +337,22 @@ class EntityField extends FieldPluginBase implements CacheableDependencyInterfac
 
     // The list of field storage definitions above does not include computed
     // base fields, so we need to explicitly fetch a list of all base fields in
-    // order to support them.
+    // order to support them. If a bundle was specified as part of the
+    // definition, also check the field definitions to support computed bundle
+    // fields.
     // @see \Drupal\Core\Entity\EntityFieldManager::getFieldStorageDefinitions()
-    $base_fields = $this->entityManager->getBaseFieldDefinitions($entity_type_id);
-    if (isset($this->definition['field_name']) && isset($base_fields[$this->definition['field_name']])) {
-      return $base_fields[$this->definition['field_name']]->getFieldStorageDefinition();
+    if (isset($this->definition['field_name'])) {
+      $base_fields = $this->entityManager->getBaseFieldDefinitions($entity_type_id);
+      if (isset($base_fields[$this->definition['field_name']])) {
+        return $base_fields[$this->definition['field_name']]->getFieldStorageDefinition();
+      }
+
+      if (isset($this->definition['bundle'])) {
+        $fields = $this->entityManager->getFieldDefinitions($entity_type_id, $this->definition['bundle']);
+        if (isset($fields[$this->definition['field_name']])) {
+          return $fields[$this->definition['field_name']]->getFieldStorageDefinition();
+        }
+      }
     }
   }
 
