Bạn có thể muốn chuyển hướng từ bên trong thành phần Livewire sang một trang khác trong ứng dụng của mình. Livewire hỗ trợ cú pháp phản hồi chuyển hướng tiêu chuẩn mà bạn đã quen sử dụng trong bộ điều khiển Laravel
1class ContactForm extends Component
5 public function addContact[]
7 Contact::create[['email' => $this->email]];
9 return redirect[]->to['/contact-form-success'];
2 Email:
4 Submit
Bây giờ, sau khi người dùng nhấp vào "Gửi" và liên hệ của họ được thêm vào cơ sở dữ liệu, họ sẽ được chuyển hướng đến trang thành công [
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
6]Vì Livewire hoạt động với hệ thống chuyển hướng của Laravel, nên bạn có thể sử dụng bất kỳ ký hiệu nào mà bạn quen dùng như
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
7, Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
8, Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
9 Đây là chức năng của đoạn mã trên.
1. Đầu tiên, nó kiểm tra xem người dùng đã đăng nhập chưa [nếu không, nó sẽ chuyển hướng đến trang đăng nhập].
2. Nếu người dùng đã đăng nhập, nó sẽ kiểm tra xem người dùng đã xác minh email của mình chưa [nếu không, nó sẽ chuyển hướng đến trang xác minh].
3. Nếu
Chuyển hướng là cần thiết khi người dùng truy cập các tuyến đường mà họ không được phép truy cập hoặc cố gắng thực hiện các hành động mà họ không được phép thực hiện
Laravel cung cấp hai cách phổ biến để xử lý chuyển hướng và đưa người dùng đến nơi họ nên đến
Bạn có thể chuyển hướng với trình trợ giúp
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
7 hoặc mặt tiền Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
8Trong ảnh này, tất cả các ví dụ sẽ sử dụng trình trợ giúp
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
9 thay vì mặt tiền. Tuy nhiên, cả hai đều làm điều tương tựroute[$route, $parameters = [], $status = 302, $headers = []]
0
route[$route, $parameters = [], $status = 302, $headers = []]
route[$route, $parameters = [], $status = 302, $headers = []]
0 đi vào đường dẫn được chuyển hướng đến; Bạn cũng có thể chuyển vào một mã trạng thái khác, các tiêu đề khác và thậm chí đặt sử dụng HTTP hay HTTPS
Định nghĩa của phương thức
route[$route, $parameters = [], $status = 302, $headers = []]
2 như sau________số 8Đây là một ví dụ về cách chuyển hướng người dùng chưa được xác thực đến trang đăng nhập
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
route[$route, $parameters = [], $status = 302, $headers = []]
3
route[$route, $parameters = [], $status = 302, $headers = []]
route[$route, $parameters = [], $status = 302, $headers = []]
3 giống như phương pháp route[$route, $parameters = [], $status = 302, $headers = []]
2 đã giải thích ở trên. Sự khác biệt duy nhất là nó đi theo một tuyến đường được đặt tên thay vì đường dẫn thôCho rằng các tham số tuyến đường không thể được ghi trong tuyến đường khi sử dụng các tuyến đường được đặt tên, phương thức
route[$route, $parameters = [], $status = 302, $headers = []]
6 chấp nhận một mảng tham số thứ hai có tên là route[$route, $parameters = [], $status = 302, $headers = []]
7 có tất cả các tham số tuyến đường cho tuyến đườngĐịnh nghĩa của phương thức
route[$route, $parameters = [], $status = 302, $headers = []]
6 như sauroute[$route, $parameters = [], $status = 302, $headers = []]
Đây là một ví dụ về cách chuyển hướng đến một bài đăng blog cụ thể
2 Email:
4 Submit
7Ví dụ này hoạt động giống như khi chúng ta sử dụng phương pháp
route[$route, $parameters = [], $status = 302, $headers = []]
2, như hình bên dưới 2 Email:
4 Submit
9 2 Email:
4 Submit
70
2 Email:
4 Submit
Những lần khác, bạn có thể chỉ muốn đưa người dùng trở lại nơi họ đến.
2 Email:
4 Submit
70 tận dụng lợi thế của việc Laravel sử dụng các phiên làm việc và sẽ luôn biết về trang đã xem trước đó của người dùngĐịnh nghĩa của phương thức
2 Email:
4 Submit
72 như sauRoute::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
3Đây là một ví dụ về cách chuyển hướng trở lại trang trước
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
4Ví dụ này có thể được viết lại để sử dụng một phím tắt, như hình bên dưới
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
5 2 Email:
4 Submit
73
2 Email:
4 Submit
Đôi khi [thường là sau khi xác thực], bạn sẽ muốn chuyển hướng người dùng đến trang tổng quan của họ, thường có tên là
2 Email:
4 Submit
74Bạn có thể sử dụng phương pháp
2 Email:
4 Submit
75 để chuyển hướng người dùng đến đường dẫn có tên là 2 Email:
4 Submit
74Định nghĩa của phương thức
2 Email:
4 Submit
75 như sauRoute::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
1Đây là một ví dụ về cách chuyển hướng đến trang chủ
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
2Ví dụ này làm điều tương tự
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
0Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
9
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
Không phải lúc nào bạn cũng phải sử dụng các phương pháp
route[$route, $parameters = [], $status = 302, $headers = []]
2 hoặc route[$route, $parameters = [], $status = 302, $headers = []]
6. Bản thân trình trợ giúp Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
7 có thể được sử dụng làm lối tắtDưới đây là một ví dụ trong đó trình trợ giúp
Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
7 được sử dụng để thực hiện chức năng tương tự như ví dụ đầu tiên trong tiêu đề route[$route, $parameters = [], $status = 302, $headers = []]
2Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
1Đặt tuyến đường để luôn chuyển hướng
Khi ứng dụng được cập nhật, bạn có thể muốn thay đổi lộ trình vì người dùng sẽ quen với lộ trình hiện tại và bạn không muốn gặp sự cố
Đây là một ví dụ trong đó đường dẫn
2 Email:
4 Submit
94 luôn được chuyển hướng đến đường dẫn 2 Email:
4 Submit
95Route::get['/create-post', function [] {
if [!Auth::user[]] {
return redirect[]->to['/login'];
}
}];
2 2 Email:
4 Submit
96
2 Email:
4 Submit
Giả sử bạn muốn gửi dữ liệu từ tuyến hiện tại đến tuyến tiếp theo mà bạn muốn chuyển hướng đến
Phương thức
2 Email:
4 Submit
97 có thể được kết nối với các phương thức khác để truyền dữ liệu nàyĐiều này đặc biệt hữu ích khi xử lý các biểu mẫu mà bạn muốn quay lại biểu mẫu nhưng có thông báo lỗi hoặc thành công