News

Livewire 3.6 Released

Published
Livewire 3.6 Released image

Laravel Livewire released v3.6 this week with new HTML directives for showing and hiding DOM elements and JavaScript actions.

JavaScript Actions

Caleb Porzio added support for defining JavaScript actions "which are JavaScript functions that can be called from wire:click or $wire, to either run client side code only or to apply optimistic updates before triggering a server request."

Here's an example from Pull Request #9202:

<?php
use Livewire\Volt\Component;
 
new class extends Component {
public function save()
{
// ...
}
};
?>
 
<div>
<button wire:click="doSomething">Do Something</button>
</div>
 
@script
<script>
$js('doSomething', () => {
console.log('doSomething');
 
$wire.save()
});
</script>
@endscript

You can also call JavaScript actions from PHP using the ->js() method:

$this->js('onPostSaved');

You can learn more about JavaScript actions in the Actions documentation.

New HTML Directives

Josh Hanley contributed the wire:show and wire:text directives, and Caleb Porzio contributed wire:cloak and wire:transition directives.

The wire:show and wire:text directives are Livewire equivalents of Alpine's x-show and x-text. The wire:show directive, for example, toggles an element's visibility using CSS

<div>
<button x-on:click="$wire.showModal = true">New Post</button>
 
<div wire:show="showModal">
<form wire:submit="save">
<textarea wire:model="content"></textarea>
 
<button type="submit">Save Post</button>
</form>
</div>
</div>

The wire:text directive dynamically updates an element's content, making it useful for building optimistic UIs:

<div>
<button x-on:click="$wire.likes++; $wire.like()">❤️ Like</button>
 
Likes: <span wire:text="likes"></span>
</div>

You can learn more about these new directives from Livewire's documentation:

Release Notes

You can see the complete list of new features from the diff between 3.5.20 and 3.6.0 on GitHub. You can learn more about these features and more from the Livewire documentation.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
Laravel monitoring that doesn't bill you by your traffic image

Laravel monitoring that doesn't bill you by your traffic

Read article
Mock PHP Classes in Tests With the Double Library image

Mock PHP Classes in Tests With the Double Library

Read article
Laravel Discount: Coupon Codes, Usage Limits, and Stacking image

Laravel Discount: Coupon Codes, Usage Limits, and Stacking

Read article
Laravel Truss: Live Interactive Database ER Diagrams image

Laravel Truss: Live Interactive Database ER Diagrams

Read article
Laravel artisan dev: Run Server, Queue, Logs, and Vite image

Laravel artisan dev: Run Server, Queue, Logs, and Vite

Read article
Validate and Convert HEIC Images in Laravel image

Validate and Convert HEIC Images in Laravel

Read article