JSX Attributes

ref

Edit this page

Refs are a way of getting access to underlying DOM elements in our JSX. While it is true one could just assign an element to a variable, it is more optimal to leave components in the flow of JSX. Refs are assigned at render time but before the elements are connected to the DOM. They come in 2 flavors.

// variable assigned directly by ref
let myDiv;
// use onMount or createEffect to read after connected to the DOM
onMount(() => console.log(myDiv));
<div ref={myDiv} />
// Or, callback function (called before connected to the DOM)
<div ref={el => console.log(el)} />

Refs can also be used on Components. They still need to be attached on the other side.

function MyComp(props) {
return <div ref={props.ref} />
}
function App() {
let myDiv
onMount(() => console.log(myDiv.clientWidth))
return <MyComp ref={myDiv} />
}
Report an issue with this page