mirror of
https://github.com/NginxProxyManager/nginx-proxy-manager.git
synced 2025-11-05 01:45:14 +00:00
React
This commit is contained in:
29
frontend/src/components/NavLink.tsx
Normal file
29
frontend/src/components/NavLink.tsx
Normal file
@@ -0,0 +1,29 @@
|
||||
import { useNavigate } from "react-router-dom";
|
||||
|
||||
interface Props {
|
||||
children: React.ReactNode;
|
||||
to?: string;
|
||||
isDropdownItem?: boolean;
|
||||
onClick?: () => void;
|
||||
}
|
||||
export function NavLink({ children, to, isDropdownItem, onClick }: Props) {
|
||||
const navigate = useNavigate();
|
||||
|
||||
return (
|
||||
<a
|
||||
className={isDropdownItem ? "dropdown-item" : "nav-link"}
|
||||
href={to}
|
||||
onClick={(e) => {
|
||||
e.preventDefault();
|
||||
if (onClick) {
|
||||
onClick();
|
||||
}
|
||||
if (to) {
|
||||
navigate(to);
|
||||
}
|
||||
}}
|
||||
>
|
||||
{children}
|
||||
</a>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user