如何设置 Laravel Livewire 组件以使其在导航时不再加载

问题描述 投票:0回答:2
我有一个在每个页面上使用的 Livewire 组件(例如标题中的通知)并且它是延迟加载的。我知道它将在页面刷新时再次加载或单击不包含“wire:navigate”属性的链接。但是,当我在链接上使用“wire:navigate”转到另一个页面时,我希望该组件保持不变,而无需再次安装和刷新,这样就不会进行额外的查询来提高性能。

可能吗?如果是的话,怎么办?

laravel navigation components laravel-livewire
2个回答
0
投票
我希望这会有所帮助,尝试这种方式的次数,我也更喜欢 要跨页面转换维护 Livewire 组件状态,请使用带有组件唯一标识符的“wire:key”指令。这可以防止在页面之间导航时重新安装它。


0
投票
您可以将元素放入

@persist ... @endpersist

 方法中,以便在 Livewire 中的页面访问中保留元素,如下所示(音频播放器是一个示例,因为您没有发布任何代码):

@persist('player') <audio src="{{ $episode->file }}" controls></audio> @endpersist
文档

跨页面访问保留元素

© www.soinside.com 2019 - 2024. All rights reserved.