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

Директива wire:keydown.escape

Директива wire:keydown.escape вешается на HTML-элемент и вызывает указанный метод компонента при нажатии клавиши Escape. В значение передаётся имя публичного метода. После вызова Livewire обновляет шаблон компонента.

Синтаксис

<input wire:keydown.escape="methodName">

Пример

Давайте очистим поле ввода по нажатию клавиши Escape:

<?php namespace AppLivewire; use LivewireComponent; class Search extends Component { public $query = ''; public function clear() { $this->query = ''; } public function render() { return view('livewire.search'); } } ?>
<input type="text" wire:model="query" wire:keydown.escape="clear" placeholder="Search..." > <p>Query: {{ $query }}</p>

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

<input type="text" placeholder="Search..."> <p>Query: </p>

Пример

Давайте закроем модальное окно по нажатию Escape:

<?php namespace AppLivewire; use LivewireComponent; class Modal extends Component { public $isOpen = true; public function close() { $this->isOpen = false; } public function render() { return view('livewire.modal'); } } ?>
@if ($isOpen) <div class="modal-overlay" wire:keydown.escape="close" > <div class="modal-content"> <h2>Modal Window</h2> <p>Press Escape to close</p> <button wire:click="close">Close</button> </div> </div> @endif

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

<div class="modal-overlay"> <div class="modal-content"> <h2>Modal Window</h2> <p>Press Escape to close</p> <button>Close</button> </div> </div>

Пример

Давайте сбросим форму по нажатию Escape:

<?php namespace AppLivewire; use LivewireComponent; class Form extends Component { public $name = ''; public $email = ''; public $message = ''; public function resetForm() { $this->name = ''; $this->email = ''; $this->message = ''; } public function render() { return view('livewire.form'); } } ?>
<div wire:keydown.escape="resetForm"> <input type="text" wire:model="name" placeholder="Name"> <input type="email" wire:model="email" placeholder="Email"> <textarea wire:model="message" placeholder="Message"></textarea> <p>Name: {{ $name }}</p> <p>Email: {{ $email }}</p> <p>Message: {{ $message }}</p> </div>

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

<div> <input type="text" placeholder="Name"> <input type="email" placeholder="Email"> <textarea placeholder="Message"></textarea> <p>Name: </p> <p>Email: </p> <p>Message: </p> </div>

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

  • директиву wire:keydown,
    которая вызывает метод при нажатии любой клавиши
  • директиву wire:keydown.enter,
    которая вызывает метод при нажатии клавиши Enter
  • директиву wire:keyup,
    которая вызывает метод при отпускании клавиши
  • директиву wire:model,
    которая привязывает поле ввода к свойству компонента
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить