fix: button forwardRef

This commit is contained in:
Zachery Ng 2024-02-22 17:28:18 +08:00
parent 496404195c
commit 2715d0216c

View File

@ -98,19 +98,29 @@ const Button = forwardRef<
href, href,
...baseLinkProps, ...baseLinkProps,
}; };
return <a {...externalLinkProps}>{_children}</a>; return (
// @ts-expect-error - ref
<a ref={ref} {...externalLinkProps}>
{_children}
</a>
);
} }
// Internal link // Internal link
return ( return (
<Link {...baseLinkProps} to={href}> // @ts-expect-error - ref
<Link ref={ref} {...baseLinkProps} to={href}>
{_children} {_children}
</Link> </Link>
); );
} else { } else {
const { ...buttonProps } = _props; const { ...buttonProps } = _props;
return (
// @ts-expect-error - as prop is not a valid prop for button elements // @ts-expect-error - as prop is not a valid prop for button elements
return <button {...buttonProps}>{_children}</button>; <button ref={ref} {...buttonProps}>
{_children}
</button>
);
} }
}, },
[], [],
@ -161,8 +171,6 @@ const Button = forwardRef<
return ( return (
<Component <Component
{...props} {...props}
// @ts-expect-error - ref is not a valid prop for button elements
ref={ref}
className={buttonTheme({ ...styleProps, class: className })} className={buttonTheme({ ...styleProps, class: className })}
> >
{cloneIcon(leftIcon, { ...iconSize })} {cloneIcon(leftIcon, { ...iconSize })}