useBeforeLeave
Edit this pageuseBeforeLeave takes a function that will be called prior to leaving a route.
The function will be called with:
- from (Location): current location (before change).
- to (string | number}: path passed to navigate.
- options (NavigateOptions}: options passed to navigate.
- preventDefault (void function): call to block the route change.
- defaultPrevented (readonly boolean): trueif any previously called leave handlers calledpreventDefault().
- retry (void function, force?: boolean ): call to retry the same navigation.
Pass trueto skip running the leave handlers again (ie. force navigate without confirming).
Example usage:
useBeforeLeave((e: BeforeLeaveEventArgs) => {  if (form.isDirty && !e.defaultPrevented) {    // preventDefault to block immediately and prompt user async    e.preventDefault();    setTimeout(() => {      if (window.confirm("Discard unsaved changes - are you sure?")) {        // user wants to proceed anyway so retry with force=true        e.retry(true);      }    }, 100);  }});