Blame view

天文台pc/tianwentai-ui/node_modules/@mui/utils/useEventCallback/useEventCallback.js 889 Bytes
bc518174   王天杨   提交两个项目文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
  "use strict";
  'use client';
  
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
  exports.default = void 0;
  var React = _interopRequireWildcard(require("react"));
  var _useEnhancedEffect = _interopRequireDefault(require("../useEnhancedEffect"));
  /**
   * Inspired by https://github.com/facebook/react/issues/14099#issuecomment-440013892
   * See RFC in https://github.com/reactjs/rfcs/pull/220
   */
  
  function useEventCallback(fn) {
    const ref = React.useRef(fn);
    (0, _useEnhancedEffect.default)(() => {
      ref.current = fn;
    });
    return React.useRef((...args) =>
    // @ts-expect-error hide `this`
    (0, ref.current)(...args)).current;
  }
  var _default = exports.default = useEventCallback;