bastinald / laravel-livewire-routes
Laravel Livewire 全页组件路由。
3.0.0
2021-09-10 00:10 UTC
Requires
- laravel/framework: ^8.0
- livewire/livewire: ^2.0
README
此包允许您通过 route
方法直接在您的全页 Livewire 组件中指定路由。该方法返回 Laravel Route
门面,从而让您完全控制。
文档
安装
通过 composer 需求此包
composer require bastinald/laravel-livewire-routes
使用
路由方法
在您的全页 Livewire 组件中声明一个 route
方法以路由到它们
namespace App\Http\Livewire\Auth; use Illuminate\Support\Facades\Route; use Livewire\Component; class Login extends Component { public function route() { return Route::get('login') ->name('login') ->middleware('guest'); } public function render() { return view('livewire.auth.login'); } }
如您所见,route
方法返回 Laravel Route
门面,因此您可以使用此方法指定您通常在路由文件中指定的任何内容。
使用路由参数
按常规将路由参数传递给组件的 mount
方法
namespace App\Http\Livewire\Users; use App\Models\User; use Illuminate\Support\Facades\Route; use Livewire\Component; class Update extends Component { public $user; public function route() { return Route::get('users/update/{user}') ->name('users.update') ->middleware('auth'); } public function mount(User $user) { $this->user = $user; } public function render() { return view('livewire.users.update'); } }
是的,这甚至适用于自动模型绑定!