🧑💻 create button delay helper
This commit is contained in:
7
app/(clear)/layout.tsx
Normal file
7
app/(clear)/layout.tsx
Normal file
@ -0,0 +1,7 @@
|
||||
import React from "react";
|
||||
|
||||
const clearLayout = ({ children }: Readonly<{ children: React.ReactNode }>) => {
|
||||
return <div>{children}</div>;
|
||||
};
|
||||
|
||||
export default clearLayout;
|
||||
7
app/(clear)/login/page.tsx
Normal file
7
app/(clear)/login/page.tsx
Normal file
@ -0,0 +1,7 @@
|
||||
import React from "react";
|
||||
|
||||
const page = () => {
|
||||
return <div>page</div>;
|
||||
};
|
||||
|
||||
export default page;
|
||||
7
app/(clear)/signup/page.tsx
Normal file
7
app/(clear)/signup/page.tsx
Normal file
@ -0,0 +1,7 @@
|
||||
import React from "react";
|
||||
|
||||
const page = () => {
|
||||
return <div>Sign Up</div>;
|
||||
};
|
||||
|
||||
export default page;
|
||||
11
shared/lib/delayButtonClick.ts
Normal file
11
shared/lib/delayButtonClick.ts
Normal file
@ -0,0 +1,11 @@
|
||||
import { useRouter } from "next/navigation";
|
||||
|
||||
export const delayButtonClick = (
|
||||
router: ReturnType<typeof useRouter>,
|
||||
href: string,
|
||||
timeout: number = 300
|
||||
) => {
|
||||
setTimeout(() => {
|
||||
router.push(href);
|
||||
}, timeout);
|
||||
};
|
||||
@ -1,6 +1,5 @@
|
||||
"use client";
|
||||
|
||||
import V from "next/link";
|
||||
import {
|
||||
Button,
|
||||
Link,
|
||||
@ -12,8 +11,9 @@ import {
|
||||
NavbarMenuItem,
|
||||
NavbarMenuToggle,
|
||||
} from "@heroui/react";
|
||||
import { usePathname } from "next/navigation";
|
||||
import { usePathname, useRouter } from "next/navigation";
|
||||
import React, { useState } from "react";
|
||||
import { delayButtonClick } from "../lib/delayButtonClick";
|
||||
|
||||
export const AcmeLogo = () => {
|
||||
return (
|
||||
@ -29,7 +29,9 @@ export const AcmeLogo = () => {
|
||||
};
|
||||
|
||||
const NavbarUI = () => {
|
||||
const router = useRouter();
|
||||
const pathNameNow = usePathname();
|
||||
|
||||
const [isMenuOpen, setIsMenuOpen] = useState(false);
|
||||
|
||||
const navbarItems = [
|
||||
@ -86,17 +88,16 @@ const NavbarUI = () => {
|
||||
</NavbarContent>
|
||||
<NavbarContent justify="end">
|
||||
<NavbarItem className="hidden lg:flex">
|
||||
<Link href="#" className="font-medium">
|
||||
<Link href="/login" className="font-medium">
|
||||
Login
|
||||
</Link>
|
||||
</NavbarItem>
|
||||
<NavbarItem>
|
||||
<Button
|
||||
as={Link}
|
||||
color="primary"
|
||||
href="#"
|
||||
variant="solid"
|
||||
radius="sm"
|
||||
onPress={() => delayButtonClick(router, "/signup")}
|
||||
>
|
||||
Sign Up
|
||||
</Button>
|
||||
|
||||
Reference in New Issue
Block a user