Đăng ký listener
Để đăng ký event listener, dùng phương thứcrouter.on().
inertia: vào tên sự kiện.
Gỡ listener
Khi bạn đăng ký event listener, Inertia tự động trả về một callback có thể gọi để gỡ listener đó.removeEventListener().
Hủy sự kiện
Một số sự kiện nhưbefore, invalid và error hỗ trợ việc hủy, cho phép bạn ngăn hành vi mặc định của Inertia. Tương tự event nguyên bản, event sẽ bị hủy nếu chỉ một event listener gọi event.preventDefault().
router.on(), bạn có thể hủy event bằng cách trả về false từ listener.
popstate, vì vậy không thể ngăn các lần điều hướng tiến và lùi trong lịch sử khi sử dụng Inertia.js.
Before
Sự kiệnbefore được phát ngay trước khi một request chuẩn bị được gửi đến máy chủ. Điều này hữu ích để chặn visit.
Start
Sự kiệnstart được phát khi request đến máy chủ đã bắt đầu. Sự kiện này hữu ích để hiển thị loading indicator.
start không thể bị hủy.
Progress
Sự kiệnprogress được phát khi tiến trình tăng lên trong quá trình tải file.
progress không thể bị hủy.
Success
Sự kiệnsuccess được phát khi page visit thành công, trừ khi có lỗi validation. Tuy nhiên, điều này không bao gồm các visit trong lịch sử trình duyệt.
success không thể bị hủy.
Error
Sự kiệnerror được phát khi có lỗi validation trong các page visit “thành công”.
error không thể bị hủy.
Invalid
Sự kiệninvalid được phát khi máy chủ trả về response không phải Inertia, chẳng hạn response HTML hoặc JSON thông thường. Một response Inertia hợp lệ là response có header X-Inertia được đặt thành true cùng payload json chứa page object.
Sự kiện này được phát với mọi loại response, bao gồm các mã response 200, 400 và 500.
invalid để ngăn Inertia hiển thị modal chứa response không phải Inertia.
Exception
Sự kiệnexception được phát khi xảy ra lỗi XHR ngoài dự kiến như gián đoạn mạng. Ngoài ra, sự kiện này cũng được phát với các lỗi xảy ra trong quá trình resolve page component.
exception để ngăn lỗi bị ném ra.
400 hoặc 500, cũng không áp dụng cho response không phải Inertia, vì Inertia xử lý các tình huống này theo cơ chế khác. Hãy xem tài liệu xử lý lỗi để biết thêm thông tin.
Finish
Sự kiệnfinish được phát sau khi một request XHR hoàn tất, áp dụng cho cả response “thành công” lẫn “không thành công”. Sự kiện này hữu ích để ẩn loading indicator.
finish không thể bị hủy.
Navigate
Sự kiệnnavigate được phát khi page visit thành công, cũng như khi điều hướng qua lịch sử trình duyệt.
navigate không thể bị hủy.