antd-fx67ll-test
Version:
这是一个测试着玩的私服antd项目,完全照抄v4.16.6的antd源码,请勿使用,仅做发布测试(因每次发布必须要升版本,如发现版本出入请忽略,与官方无关)
26 lines (24 loc) • 1.02 kB
JavaScript
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
import * as React from 'react';
export default function usePatchElement() {
var _React$useState = React.useState([]),
_React$useState2 = _slicedToArray(_React$useState, 2),
elements = _React$useState2[0],
setElements = _React$useState2[1];
var patchElement = React.useCallback(function (element) {
// append a new element to elements (and create a new ref)
setElements(function (originElements) {
return [].concat(_toConsumableArray(originElements), [element]);
}); // return a function that removes the new element out of elements (and create a new ref)
// it works a little like useEffect
return function () {
setElements(function (originElements) {
return originElements.filter(function (ele) {
return ele !== element;
});
});
};
}, []);
return [elements, patchElement];
}