ukelli-ui
Version:
Base on React's UI lib. Make frontend's dev simpler and faster.
63 lines (62 loc) • 1.86 kB
TypeScript
/// <reference types="react" />
import { UkePureComponent } from '../utils/uke-component';
export interface NotificationProps {
handleClick?: (params: {}) => void;
}
interface State {
notifyItems: {};
position: string;
}
export interface NotifyConfig {
/** 通知的标题 */
title?: string;
/** id */
id?: string;
/** 通知的内容 */
text?: any;
/** id */
type?: 'success' | 'error' | 'normal' | 'warn' | 'black' | 'white';
/** 通知持续时间,如果 < 0, 则一直存在,除非用户主动关闭 */
timer?: number;
/** 点击此次通知的回调 */
onClickTip?: (notifyConfig: NotifyConfig) => void;
/** 操作按钮显示的文字 */
actionText?: string;
}
export declare const NotifyEvent = "NOTIFY";
export default class Notification extends UkePureComponent<NotificationProps, State> {
timers: {
[key: string]: any;
};
IDIncrement: number;
constructor(props: any);
/**
* receiveNotify 参数说明
* notifyConfig = {
* text: '',
* id: '',
* title: '',
* type: [success error normal warn black white] default 'desc'
* lifecycle: 7 sec,
* onClickTip: func,
* actionText: string,
* navigateConfig: {
* type: 'MANAGER',
* activeMenu: {
* code: 'ZHMX'
* }
* },
* }
*/
componentWillUnmount(): void;
notifyConfigFilter(notifyConfig: NotifyConfig): NotifyConfig;
receiveNotify: (notifyConfig: NotifyConfig, _position: any) => string | 0;
clickTip(clickTarget: any, msgID: any): void;
closeTip(msgID: any): void;
clearAllNotify: () => void;
clearTargetTimer(msgID: any): void;
startTargetTimer(msgObj: any): void;
setTipHideTimer(msgObj: any): void;
render(): JSX.Element;
}
export {};