@cainiaofe/cn-ui-m
Version:
79 lines (78 loc) • 1.73 kB
TypeScript
/// <reference types="react" />
import { GetContainer } from './get-container';
import { MaskProps } from './mask-props';
import { PropagationEvent } from './propagation-event';
export interface PopupBaseProps {
/**
* 完全关闭后触发
*/
afterClose?: () => void;
/**
* 完全展示后触发
*/
afterShow?: () => void;
/**
* 内容区域类名
*/
bodyClassName?: string;
/**
* 内容区域样式
*/
bodyStyle?: React.CSSProperties;
/**
* 点击背景蒙层后是否关闭
*/
closeOnMaskClick?: boolean;
/**
* 不可见时卸载内容
*/
destroyOnClose?: boolean;
/**
* 阻止滚动
*/
disableBodyScroll?: boolean;
/**
* 强制渲染内容
*/
forceRender?: boolean;
/**
* 指定挂载的 HTML 节点,默认为 body,如果为 null 的话,会渲染到当前节点
*/
getContainer?: GetContainer;
/**
* 是否展示蒙层
*/
mask?: boolean;
/**
* 遮罩类名
*/
maskClassName?: string;
/**
* 遮罩样式
*/
maskStyle?: MaskProps['style'];
/**
* 点击事件触发的回调函数
*/
onClick?: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
/**
* 关闭时触发的回调函数
*/
onClose?: () => void;
/**
* 点击蒙层的回调事件
*/
onMaskClick?: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
/**
* 是否显示关闭按钮
*/
showCloseButton?: boolean;
/**
* 阻止事件冒泡
*/
stopPropagation?: PropagationEvent[];
/**
* 是否可见
*/
visible?: boolean;
}