BannerSidebar1, где передаю $sidebar_1 во view 'widgets.banner_sidebar', в banner_sidebar получаю ошибку переменная не найдена, но dd($sidebar_1) возвращает нужную коллекцию, подскажите что я делаю не так?
Где ты dd делаешь, в run() ? Если да, то в blade файле сделай следующее: @dd(get_defined_vars())
dd сделал и в ран и в blade
Вместо compact попробуй [ 'sidebar_1' => $sidebar_1 ]
Так ошибку-то покажите
Странно это. Открой вьюху widgets.banner_sidebar, и в самом начале файла сделай @dd. Должно показывать твою переменную (скрин короче скинешь)
лично я compact вообще не приветствую. если у вас так много что использование compact() ощутимо сокращает кол-во кода, возможно вам нужно пересмотреть структуру ? например что-то в livewire компоненты вынести
сделал dd в самом начале вью куда подключаю свой виджет, переменной $sidebar_1 там нет
очень странное явление, но просто рекомендация, избавьте себе от snake_case
Юзаю массив вместо компакта, на глаз понятнее, ибо последнее долго не мог понять как работает
да как работает то там все просто, пыха поддерживает передачу в строке названия переменной и получения ее по названию из строки, аналогично для классов и методов.
Ну типа, когда только знакомился с Ларой, пытался юзать компакт. Не сразу вкурил, почему пишу в него название переменной-массива, а во вьюху передаётся только содержимое массива🥲
а причем тут лара и что там вкуривать? компакт возвращает ключ => значение, где ключи - имена переменных. иногда выглядит куда приятнее, чем перечислят вручную 'user' => $user, 'post' => $post, 'comments' => $comments, прост ты наверн в view() обернул компакт еще в один массив
ну тогда это или какой-то кэш, хотя пишут он по дефолту отключен. либо опечатка, пробовал другое имя переменной? например f
да изначально было просто $sidebar, потом пробовал $sidebar1Banner, остановился на $sidebar_1
Обсуждают сегодня