paradiego
This commit is contained in:
25
node_modules/@mui/utils/useLazyRef/useLazyRef.js
generated
vendored
Normal file
25
node_modules/@mui/utils/useLazyRef/useLazyRef.js
generated
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
"use strict";
|
||||
'use client';
|
||||
|
||||
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = useLazyRef;
|
||||
var React = _interopRequireWildcard(require("react"));
|
||||
const UNINITIALIZED = {};
|
||||
|
||||
/**
|
||||
* A React.useRef() that is initialized lazily with a function. Note that it accepts an optional
|
||||
* initialization argument, so the initialization function doesn't need to be an inline closure.
|
||||
*
|
||||
* @usage
|
||||
* const ref = useLazyRef(sortColumns, columns)
|
||||
*/
|
||||
function useLazyRef(init, initArg) {
|
||||
const ref = React.useRef(UNINITIALIZED);
|
||||
if (ref.current === UNINITIALIZED) {
|
||||
ref.current = init(initArg);
|
||||
}
|
||||
return ref;
|
||||
}
|
||||
Reference in New Issue
Block a user