Blame view

天文台pc/tianwentai-ui/node_modules/react-dnd/dist/hooks/useDrag/useDrag.js 1.29 KB
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
  import { invariant } from '@react-dnd/invariant';
  import { useCollectedProps } from '../useCollectedProps.js';
  import { useOptionalFactory } from '../useOptionalFactory.js';
  import { useConnectDragPreview, useConnectDragSource } from './connectors.js';
  import { useDragSourceConnector } from './useDragSourceConnector.js';
  import { useDragSourceMonitor } from './useDragSourceMonitor.js';
  import { useRegisteredDragSource } from './useRegisteredDragSource.js';
  /**
   * useDragSource hook
   * @param sourceSpec The drag source specification (object or function, function preferred)
   * @param deps The memoization deps array to use when evaluating spec changes
   */ export function useDrag(specArg, deps) {
      const spec = useOptionalFactory(specArg, deps);
      invariant(!spec.begin, `useDrag::spec.begin was deprecated in v14. Replace spec.begin() with spec.item(). (see more here - https://react-dnd.github.io/react-dnd/docs/api/use-drag)`);
      const monitor = useDragSourceMonitor();
      const connector = useDragSourceConnector(spec.options, spec.previewOptions);
      useRegisteredDragSource(spec, monitor, connector);
      return [
          useCollectedProps(spec.collect, monitor, connector),
          useConnectDragSource(connector),
          useConnectDragPreview(connector), 
      ];
  }
  
  //# sourceMappingURL=useDrag.js.map