UNPKG

@aliretail/react-materials-components

Version:
25 lines (24 loc) 899 B
import * as React from 'react'; interface ControllableLayerProps { /** 非受控 初始visible */ defaultVisible?: boolean; /** 受控 是否打开 */ visible?: boolean; /** 受控 visible 改变的回调 */ onVisibleChange?: (visible: boolean) => void; } interface WrappedLayerProps { /** visible */ visible: boolean; /** 改变visible 的函数 */ setVisible: React.Dispatch<React.SetStateAction<boolean>>; } /** * @description * 高阶组件,用于创建一个拥有以下功能的弹出层组件(Dialog、Drawer) * 1. 可通过外部 visible 进行控制打开与否 * 2. 可通过children 传trigger快捷打开 * @returns 高阶后的组件 */ declare const withControllableLayer: <T extends object>(WrappedComponent: React.ComponentType<T & WrappedLayerProps>) => React.FC<T & ControllableLayerProps>; export default withControllableLayer;