РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pplwPmFsPv 73 of 76 menu
◀ ▶

Предпросмотр файла в Livewire

Пусть человек уже выбрал картинку для поста, но на странице её не видно. Ошибку с файлом человек замечает только после сохранения, когда переделывать поздно.

Пока файл ещё не лежит в папке, у временного объекта есть метод temporaryUrl: он даёт адрес картинки для тега img. Так можно показать только изображения, не документы.

Давайте создадим компонент PostShot:

php artisan make:livewire PostShot --class

Давайте добавим маршрут и страницу:

<?php Route::get('/posts/preview', function () { return view('posts-preview'); }); ?>
<x-layout> <livewire:post-shot /> </x-layout>

Давайте подключим трейт и свойство для файла:

<?php namespace App\Livewire; use Livewire\Component; use Livewire\WithFileUploads; class PostShot extends Component { use WithFileUploads; public $photo; public function render() { return view( 'livewire.post-shot' ); } } ?>

Давайте в шаблоне добавим поле и предпросмотр:

<div> <input type="file" wire:model="photo" > @if ($photo) <img src="{{ $photo->temporaryUrl() }}"> @endif </div>

Создайте компонент EmployeeShot. Выбранное фото работника видно на странице до сохранения.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить