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);  }});