Skip to main content

useFocusOnMount

The useFocusOnMount hook in React Refocus automatically sets focus on a referenced element when the component mounts. This hook is particularly useful for improving accessibility and user experience by ensuring that the correct element receives focus immediately upon rendering.

Syntax​

useFocusOnMount(shouldFocus?: boolean): React.MutableRefObject<HTMLElement>;

Props​

  • shouldFocus (boolean, optional): A boolean value indicating whether the element should receive focus upon mount. Defaults to true.

Returns​

  • elementRef (React.MutableRefObject<HTMLElement>): A mutable ref object that you attach to the element that should receive focus.

Example​

import React from 'react';
import { useFocusOnMount } from 'react-refocus/hooks/useFocusOnMount';

const InputComponent = () => {
const inputRef = useFocusOnMount<HTMLInputElement>();

return (
<input
ref={inputRef}
type="text"
placeholder="This input will be focused on mount"
/>
);
};

export default InputComponent;

Usage​

The useFocusOnMount hook is commonly used in forms, modals, and other UI components where you want to direct the user's attention to a specific input or button when the component first renders. By automatically setting focus, you can streamline interactions and improve the overall user experience.

Accessibility Note​

Ensuring that the correct element is focused on mount is crucial for accessibility, particularly for users who rely on keyboard navigation or screen readers. The useFocusOnMount hook helps maintain a logical flow of interaction, making your application more inclusive.