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

Директива wire:loading.inline

Директива wire:loading.inline используется для управления видимостью элемента во время отправки сетевых запросов к серверу. Она работает аналогично wire:loading, но применяет к элементу стиль display: inline вместо display: block. Это позволяет отображать индикатор загрузки встроенным образом, не нарушая поток текста.

Синтаксис

<span wire:loading.inline> Loading... </span>

Пример

Давайте создадим компонент с кнопкой, которая имитирует длительный запрос. Индикатор загрузки будет отображаться в строке с текстом:

<?php namespace App\Livewire; use Livewire\Component; class InlineLoadingExample extends Component { public $message = ''; public function loadData() { $this->message = ''; sleep(2); $this->message = 'Data loaded!'; } public function render() { return view('livewire.inline-loading-example'); } } ?>
<div> <button wire:click="loadData"> Load data </button> <p> Status: <span wire:loading.inline> Loading... </span> <span wire:loading.remove> {{ $message }} </span> </p> </div>

Результат выполнения кода до клика:

<button> Load data </button> <p> Status: <span> Data loaded! </span> </p>

Результат выполнения кода во время загрузки:

<button> Load data </button> <p> Status: <span> Loading... </span> </p>

Пример

Директива может быть использована с условными операторами для более гибкого управления отображением. В следующем примере мы показываем спиннер только во время загрузки списка пользователей:

<?php namespace App\Livewire; use Livewire\Component; class UserList extends Component { public $users = []; public $loading = false; public function loadUsers() { $this->loading = true; sleep(2); $this->users = ['Alice', 'Bob', 'Charlie']; $this->loading = false; } public function render() { return view('livewire.user-list'); } } ?>
<div> <button wire:click="loadUsers"> Load users </button> <ul> @foreach ($users as $user) <li>{{ $user }}</li> @endforeach </ul> <p> <span wire:loading.inline> ⏳ Fetching users... </span> <span wire:loading.inline wire:loading.remove> ✔️ Users loaded </span> </p> </div>

Результат выполнения кода во время загрузки:

<button> Load users </button> <ul> <li> Alice </li> <li> Bob </li> <li> Charlie </li> </ul> <p> <span> ⏳ Fetching users... </span> </p>

Смотрите также

  • директиву wire:loading,
    которая показывает элемент во время загрузки
  • директиву wire:loading.delay,
    которая задерживает появление индикатора загрузки
  • директиву wire:loading.remove,
    которая скрывает элемент во время загрузки
  • директиву wire:click,
    которая обрабатывает клик и запускает запрос к серверу
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить