UNPKG

antd

Version:

An enterprise-class UI design language and React components implementation

27 lines (24 loc) 983 B
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray"; import _slicedToArray from "@babel/runtime/helpers/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]; function patchElement(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]; }