# React useRef Hook

`useRef` is a Hook provided by React that allows you to create a mutable object that persists throughout the lifetime of a component. The object can be accessed and updated within the component, and changes to the object will not trigger a re-render of the component.

The `useRef` Hook returns a single value, which is a mutable ref object. This object has a `current` property that can be used to store any value, such as a DOM node or a variable.

One common use case for `useRef` is to reference a DOM element, which can be accessed and manipulated directly using the ref object's `current` property. For example, you could use `useRef` to store a reference to an input element and then call the `focus()` method on it in response to a user action.

Here's an example of using `useRef` to create a ref object and reference a DOM element:

```javascript
import React, { useRef } from 'react';

function MyComponent() {
  const inputRef = useRef(null);

  function handleClick() {
    inputRef.current.focus();
  }

  return (
    <div>
      <input type="text" ref={inputRef} />
      <button onClick={handleClick}>Focus Input</button>
    </div>
  );
}
```

The `useRef` Hook is called to create a ref object `inputRef` with an initial value of `null`. The `ref` attribute is then passed to the `input` element, which assigns the reference to the `current` property of the ref object. Finally, a button is rendered with an `onClick` event handler that calls the `focus()` method on the ref object's `current` property, which will focus the input element.
