Changing '#view_mode' in content type's render array I have a content type in Drupal 8 project that has image, name, info and body field as a default display, and image,name and information as a teaser display. I am able to display this content type with teaser view at the page, but right under that i would like to get the default display along with body field so i can create a bootstrap modal with that. 

I am using hook_node_view in the module level to change the #view_mode of that render array to 'full' instead of 'teaser'.

function team_bio_node_view(array &amp;$build, \Drupal\Core\Entity\EntityInterface $entity, \Drupal\Core\Entity\Display\EntityViewDisplayInterface $display, $view_mode) {

if($entity-&gt;bundle() == 'about_us'){
 if($view_mode == 'full'){
  if($display-&gt;getComponent('field_team_bio')){
    $build['full_view'] =  $build['field_team_bio'];
     $build['full_view'][] = array(
       'full_view' =&gt;array(
         '0'=&gt;array(
            '#view_mode'=&gt;'full'
         ),
         '#weight'=&gt;'103'
       )
    );
    kint($build);

  }
 }
}
}


i can display the content type right under teaser views, but i can't change the view_mode to full. This is what i see when i kint($build):



Current contents have name like '0','1','2','3','4', and they have the view mode that are 'teaser' but i dont how to pass 'view_mode' to 'full'in render array, I am not sure if there is specific name for that or not. Trying this:

     $build['full_view'][] = array(
       'full_view' =&gt;array(
         '0'=&gt;array(
            '#view_mode'=&gt;'full'
         )


didnt change the view_mode neither. So my question: What is the best way to change these view modes to full for the contents? Should I search these numeric keys in the array and pass them to another array then change view_mode like that? Or is there an easier way to approach the problem?
function team_bio_node_view(array &amp;$build, \Drupal\Core\Entity\EntityInterface $entity, \Drupal\Core\Entity\Display\EntityViewDisplayInterface $display, $view_mode) {
  if($entity-&gt;bundle() == 'about_us'){
    if($view_mode == 'full'){
     if($display-&gt;getComponent('field_team_bio')){

       $team_bios_full = [
        '#theme' =&gt; ['team_bio_full_wrapper'],
        '#weight' =&gt; $build['field_team_bio']['#weight'] + 1,
       ];

    foreach(Element::children($build['field_team_bio']) as $delta){
      $team_bio_full = $build['field_team_bio'][$delta];
      $team_bio_full['#view_mode'] = 'default';

      $team_bios_full['#team_bios'][] = $team_bio_full;
    }

    $build['team_bios_full'] = $team_bios_full;
  }
 }
}
}


Then I passed team-bios-full-wrapper into class and render it.Like this:

{%
  set classes = [
  'team-bios-full-wrapper',
  ]
%}
&lt;div{{ attributes.addClass(classes) }}&gt;{{ team_bios }}&lt;/div&gt;


Sorry i have different variables, i just rethought and rewrote the code. Hope this helps out someone.