37 lines
749 B
TypeScript
37 lines
749 B
TypeScript
import { TUIGlobal } from '@tencentcloud/universal-api';
|
|
import TOAST_TYPE from './type';
|
|
|
|
interface IToast {
|
|
message: string;
|
|
type?: string;
|
|
duration?: number;
|
|
}
|
|
|
|
const Toast = (options: IToast): void => {
|
|
TUIGlobal.showToast({
|
|
title: options.message || 'Toast',
|
|
duration: options.duration || 1500,
|
|
icon: handleIconType(options.type),
|
|
});
|
|
};
|
|
|
|
const handleIconType = (type: string | undefined) => {
|
|
if (!type) {
|
|
return 'none';
|
|
}
|
|
switch (type) {
|
|
case TOAST_TYPE.ERROR:
|
|
return 'none';
|
|
case TOAST_TYPE.WARNING:
|
|
return 'none';
|
|
case TOAST_TYPE.SUCCESS:
|
|
return 'success';
|
|
case TOAST_TYPE.NORMAL:
|
|
return 'none';
|
|
default:
|
|
return 'none';
|
|
}
|
|
};
|
|
|
|
export { Toast, TOAST_TYPE };
|