router.visit().
router.visit().
reload() là cách viết tắt tiện lợi, tự động truy cập lại trang hiện tại với cả preserveState và preserveScroll đều được đặt thành true, vì vậy rất phù hợp khi bạn chỉ muốn tải lại dữ liệu của trang hiện tại.
Phương thức
Khi thực hiện truy cập thủ công, bạn có thể dùng tùy chọnmethod để đặt HTTP method của request thành get, post, put, patch hoặc delete. Method mặc định là get.
put hoặc patch. Thay vào đó, hãy gửi request bằng post và kèm field _method có giá trị put hoặc patch. Kỹ thuật này được gọi là giả lập HTTP method của form.
Dữ liệu
Bạn có thể dùng tùy chọndata để thêm dữ liệu vào request.
get(), post(), put() và patch() đều nhận data làm đối số thứ hai.
Header tùy chỉnh
Tùy chọnheaders cho phép bạn thêm header tùy chỉnh vào request.
Tải file lên
Khi thực hiện lần truy cập / request có chứa file, Inertia sẽ tự động chuyển dữ liệu request thành objectFormData. Nếu muốn request luôn dùng object FormData, bạn có thể sử dụng tùy chọn forceFormData.
Lịch sử trình duyệt
Khi thực hiện các lần truy cập, Inertia tự động thêm một entry mới vào lịch sử trình duyệt. Tuy nhiên, bạn cũng có thể thay thế entry lịch sử hiện tại bằng cách đặt tùy chọnreplace thành true.
replace thành true.
Giữ lại state
Mặc định, các lần truy cập lại cùng một trang sẽ tạo một instance page component mới. Điều này khiến các state cục bộ như input của form, vị trí cuộn và trạng thái focus bị mất. Tuy nhiên, trong một số tình huống, cần giữ lại state của page component. Ví dụ, khi submit form, bạn cần giữ dữ liệu form nếu validation form thất bại ở phía máy chủ. Vì lý do này, các phương thứcpost, put, patch, delete và reload đều đặt tùy chọn preserveState thành true theo mặc định.
Bạn có thể yêu cầu Inertia giữ state của component khi sử dụng phương thức get bằng cách đặt tùy chọn preserveState thành true.
preserveState thành “errors”.
preserveState dựa trên response bằng cách cung cấp một callback.
Giữ vị trí cuộn
Khi điều hướng giữa các trang, Inertia mô phỏng hành vi mặc định của trình duyệt bằng cách tự động đưa vị trí cuộn của body tài liệu (cũng như mọi vùng cuộn bạn đã định nghĩa) trở lại đầu trang. Bạn có thể tắt hành vi này bằng cách đặt tùy chọnpreserveScroll thành false.
preserveScroll thành “errors”.
preserveScroll dựa trên response bằng cách cung cấp một callback.
Tải lại một phần
Tùy chọnonly cho phép bạn chỉ yêu cầu một tập con props (dữ liệu) từ máy chủ trong các lần truy cập tiếp theo đến cùng một trang, qua đó giúp ứng dụng hiệu quả hơn vì không cần truy xuất dữ liệu mà trang không có nhu cầu làm mới.
Hủy lần truy cập
Bạn có thể hủy một lần truy cập bằng cancel token mà Inertia tự động tạo và cung cấp thông qua callbackonCancelToken() trước khi thực hiện truy cập.
onCancel() và onFinish() sẽ được thực thi khi một lần truy cập bị hủy.
Callback sự kiện
Ngoài sự kiện toàn cục của Inertia, Inertia còn cung cấp một số callback sự kiện dành riêng cho từng lần truy cập.false từ callback onBefore() sẽ khiến lần truy cập bị hủy.
onSuccess() và onError(). Khi làm vậy, sự kiện “finish” sẽ được trì hoãn cho đến khi promise được resolve.