UNPKG

551 BJavaScriptView Raw
1import * as React from 'react';
2/**
3 * Private module reserved for @material-ui/x packages.
4 */
5
6export default function useId(idOverride) {
7 const [defaultId, setDefaultId] = React.useState(idOverride);
8 const id = idOverride || defaultId;
9 React.useEffect(() => {
10 if (defaultId == null) {
11 // Fallback to this default id when possible.
12 // Use the random value for client-side rendering only.
13 // We can't use it server-side.
14 setDefaultId(`mui-${Math.round(Math.random() * 1e5)}`);
15 }
16 }, [defaultId]);
17 return id;
18}
\No newline at end of file