first commit
This commit is contained in:
22
frontend/node_modules/rc-virtual-list/es/hooks/useDiffItem.js
generated
vendored
Normal file
22
frontend/node_modules/rc-virtual-list/es/hooks/useDiffItem.js
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
||||
import * as React from 'react';
|
||||
import { findListDiffIndex } from "../utils/algorithmUtil";
|
||||
export default function useDiffItem(data, getKey, onDiff) {
|
||||
var _React$useState = React.useState(data),
|
||||
_React$useState2 = _slicedToArray(_React$useState, 2),
|
||||
prevData = _React$useState2[0],
|
||||
setPrevData = _React$useState2[1];
|
||||
var _React$useState3 = React.useState(null),
|
||||
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
||||
diffItem = _React$useState4[0],
|
||||
setDiffItem = _React$useState4[1];
|
||||
React.useEffect(function () {
|
||||
var diff = findListDiffIndex(prevData || [], data || [], getKey);
|
||||
if ((diff === null || diff === void 0 ? void 0 : diff.index) !== undefined) {
|
||||
onDiff === null || onDiff === void 0 || onDiff(diff.index);
|
||||
setDiffItem(data[diff.index]);
|
||||
}
|
||||
setPrevData(data);
|
||||
}, [data]);
|
||||
return [diffItem];
|
||||
}
|
||||
Reference in New Issue
Block a user