[英]Laravel Livewire Passing variable data from one component to another using redirect
我正在嘗試使用兩個 livewire 控制器進行更新過程。 我想傳遞所選頁面的 id 並將該數據傳遞給另一個 livewire 控制器。
我嘗試使用: return redirect()->route('system-pages/update-system-page', ['pages_id' => $this->modelId]);
將數據傳遞到$this->modelId
是頁面 id 的 url。 每當我選擇一個頁面時,當前的 URL 是http://127.0.0.1:8000/system-pages/update-system-page?pages_id=7
。
我通過將 url 轉換為字符串並選擇最后一個字符來獲取 id: $this->pageData = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$this->pageData = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
.
有沒有更好的方法可以從另一個組件獲取 id 並將該數據傳遞給另一個 livewire 組件? 謝謝你。
不要使用查詢字符串,而是嘗試將 id 放在路徑中
所以它將是http://127.0.0.1:8000/system-pages/update-system-page/7
為此,在您的路線中,只需添加一個變量: Route::get('system-pages/update-system-page/{pages_id}')
然后在你的 livewire 控制器中,使用 mount 方法獲取 id
public function mount($pages_id){
}
重定向代碼仍然和你的一樣。
來源: https : //laravel-livewire.com/docs/2.x/rendering-components#route-params
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.