31 lines
673 B
TypeScript
31 lines
673 B
TypeScript
import { View, Text } from '@tarojs/components'
|
|
import { Empty } from '@/components/empty'
|
|
import styles from './index.module.scss'
|
|
|
|
interface Props {
|
|
status: 'error'
|
|
mode?: 'list' | 'wifi' | 'error' | 'message'
|
|
text?: string
|
|
onRetry?: () => void
|
|
retryText?: string
|
|
}
|
|
|
|
export function StateView({
|
|
status,
|
|
mode = 'wifi',
|
|
text = '加载失败,请检查网络',
|
|
onRetry,
|
|
retryText = '重试'
|
|
}: Props) {
|
|
return (
|
|
<View className={styles.stateView}>
|
|
<Empty mode={mode} text={text} />
|
|
{onRetry && (
|
|
<View className={styles.retryBtn} onClick={onRetry}>
|
|
<Text>{retryText}</Text>
|
|
</View>
|
|
)}
|
|
</View>
|
|
)
|
|
}
|