diff --git a/src/link.tsx b/src/link.tsx index 70b6a94..085d5d6 100644 --- a/src/link.tsx +++ b/src/link.tsx @@ -73,14 +73,20 @@ const RouteLinkView = ( {...linkProps} className={clsx(className, isOpened ? activeClassName : inactiveClassName)} onClick={(evt) => { + if (onClick) { + onClick(evt); + } + + // allow user to prevent navigation + if (evt.defaultPrevented) { + return + } + evt.preventDefault(); navigate({ params: params || ({} as Params), query: query || {}, }); - if (onClick) { - onClick(evt); - } }} > {children}