rn-project
Version:
#### 项目介绍 类似一个脚手架的工具 此项目致力于构建一套基础,简单,可维护的 适配我司的react-native项目。可在此基础上搭建项目,封装了基础架构,基础组件,以及各种交互等;可快速进行项目搭建,开发。 # 涉及主要技术 - 1. 项目主要架构 * react native * react-navigation * redux
98 lines (92 loc) • 1.98 kB
JavaScript
/**
* 弹窗组件
*/
'use strict';
import Toast from 'react-native-root-toast';
let toast;
/**
* 短时间(2000ms)弹窗
* @param content 内容
* @param onShow 显示前回调函数
* @param onShown 显示后回调函数
* @param onHide 隐藏前回调函数
* @param onHidden 隐藏后回调函数
*/
export const toastShort = (
content,
position,
onShow,
onShown,
onHide,
onHidden,
) => {
if (toast !== undefined) {
Toast.hide(toast);
}
let toastPosition = Toast.positions.CENTER;
switch (position) {
case 'top':
toastPosition = Toast.positions.TOP;
break;
case 'bottom':
toastPosition = Toast.positions.BOTTOM;
break;
default:
toastPosition = Toast.positions.CENTER;
}
toast = Toast.show(content.toString(), {
duration: Toast.durations.SHORT,
position: toastPosition,
shadow: true,
animation: true,
hideOnPress: true,
delay: 0,
onShow: onShow,
onShown: onShown,
onHide: onHide,
onHidden: onHidden,
});
};
/**
* 长时间(3500ms)弹窗
* @param content 内容
* @param onShow 显示前回调函数
* @param onShown 显示后回调函数
* @param onHide 隐藏前回调函数
* @param onHidden 隐藏后回调函数
*/
export const toastLong = (
content,
position,
onShow,
onShown,
onHide,
onHidden,
) => {
if (toast !== undefined) {
Toast.hide(toast);
}
let toastPosition = Toast.positions.CENTER;
switch (position) {
case 'top':
toastPosition = Toast.positions.TOP;
break;
case 'bottom':
toastPosition = Toast.positions.BOTTOM;
break;
default:
toastPosition = Toast.positions.CENTER;
}
toast = Toast.show(content.toString(), {
duration: Toast.durations.LONG,
position: toastPosition,
shadow: true,
animation: true,
hideOnPress: true,
delay: 0,
onShow: onShow,
onShown: onShown,
onHide: onHide,
onHidden: onHidden,
});
};