Php Laravel Livewire在渲染视图后是否可以更改变量?
我想加载视图,然后更新变量数据,以停止页面加载时间过长(需要加载大量数据)。使用Laravel livewire是否可以实现这一点? 我试图让livewire呈现视图,然后在页面加载后更新公共变量。在我的例子中,我将从api获取数据,因此我希望用户看到页面,然后我可以在获取数据时添加一些加载微调器 但是,从我的测试和查看my test变量来看,不会更新 Livewire控制器示例Php Laravel Livewire在渲染视图后是否可以更改变量?,php,laravel,laravel-livewire,Php,Laravel,Laravel Livewire,我想加载视图,然后更新变量数据,以停止页面加载时间过长(需要加载大量数据)。使用Laravel livewire是否可以实现这一点? 我试图让livewire呈现视图,然后在页面加载后更新公共变量。在我的例子中,我将从api获取数据,因此我希望用户看到页面,然后我可以在获取数据时添加一些加载微调器 但是,从我的测试和查看my test变量来看,不会更新 Livewire控制器示例 class Example extends Component { public $test; p
class Example extends Component
{
public $test;
public function mount()
{
$this->test = 'hi';
}
public function render()
{
return view('livewire.example');
}
public function hydrate()
{
$this->test = 'TEST1';
}
public function hydrateTest()
{
$this->test = 'TEST2';
}
public function dehydrate()
{
$this->test = 'TEST3';
}
}
Livewire刀片示例
<div>
<p>Hello World</p>
<p>{{ $test }}</p>
</div>
你好,世界
{{$test}}
lifecycle钩子说Deterhyate在render()之后运行,这意味着$test应该='TEST3'
但它保持为“嗨”,我的初始状态
似乎还有javascript钩子,比如组件初始化时。但我不知道如何从那里调用livewire函数或变量
有人知道如何在视图呈现后更新livewire变量吗?您可以在页面第一次呈现后初始化数据,尽管使用
wire:init
指令
你的刀片看起来像
你好,世界
{{$test}}
您的组件将有一个方法loadData()
,您可以在其中调用API
类示例扩展组件
{
公费考试;
公共功能挂载()
{
$this->test='hi';
}
公共函数loadData()
{
$this->test='dataloaded';
}
公共职能
{
返回视图('livewire.example');
}
}
有关更多示例,请参阅上的官方文档。似乎我错过了livewire文档中的延迟加载!哎呀