Ваш синтаксис неправильный.Попробуйте вместо этого:
@extends( (condition) ? 'layouts.full' : 'layouts.full2', [ 'data' => ['var' => 'key'] ])
Если вам нужны разные данные в зависимости от используемого макета, вы должны вместо этого использовать операторы IF, чтобы избежать двухкратного тестирования:
@if(condition)
@extends('layouts.full', [ 'data' => ['var' => 'key'] ])
@else
@extends('layouts.full2', [ 'data2' => ['var2' => 'key2'] ])
@endif
Однако это не похоже на работу , поэтому вы должны поместить эту логику в контроллер.
if(App::environment() === 'local') {
$view = 'layouts.full';
$data = ['class' => 'blue'];
} else {
$view = 'layouts.full2';
$data = ['class' => 'red'];
}
return view('viewname', compact('view', 'data'));
И в представлении:
@extends( $view, $data )