Index.js:

import React from 'react'

import {

ScrollView,

View,

TouchableWithoutFeedback,

Text,

Image,

} from 'react-native'

import { WebView } from 'react-native-webview'

import style from './style.js'

import { Icon } from '../../../component/light'

import { Divider, LinearProgress, Button, Input, Dialog } from '@rneui/themed'

import useList from './useList.js'

export default function Index(props) {

const {

username,

emailCode,

isSendEmail,

count,

avatar,

nickname,

password,

code,

visible,

isLoading,

captcha,

visible1,

usernameEl,

setEmailCode,

handleSendEmail,

setNickname,

setPassword,

setCode,

toggleDialog1,

handleInput,

handleLogin,

handleNav,

handleVisilbe,

handleUploadAvatar,

getCaptcha,

pickFile,

} = useList(props)

return (

style={[style.mLoading, isLoading ? style.mLoadingActive : {}]}

color="primary"

/>

label="邮箱"

style={style.mRegisterInput}

labelStyle={style.mRegisterLabelStyle}

value={username}

onChangeText={handleInput}

placeholder="邮箱"

// autoFocus

ref={usernameEl}

rightIcon={

name={'help'}

onPress={toggleDialog1}

style={style.mInpntRightIcon}

>

}

>

label="邮箱验证码"

style={style.mRegisterInput}

labelStyle={style.mRegisterLabelStyle}

value={emailCode}

onChangeText={setEmailCode}

placeholder="邮箱验证码"

rightIcon={

isSendEmail ? (

title={`${count}秒后重新发送`}

disabled

containerStyle={style.mSendEmailBtn}

/>

) : (

title="发送"

containerStyle={style.mSendEmailBtn}

onPress={handleSendEmail}

/>

)

}

>

头像

{avatar ? (

source={{ uri: avatar }}

style={style.mRegisterAvatar}

>

) : (

name={'add'}

onPress={handleUploadAvatar}

style={style.mRegisterUploadIcon}

>

)}

label="昵称"

style={style.mRegisterInput}

labelStyle={style.mRegisterLabelStyle}

value={nickname}

onChangeText={setNickname}

placeholder="昵称"

>

label="密码"

style={style.mRegisterInput}

labelStyle={style.mRegisterLabelStyle}

value={password}

onChangeText={setPassword}

placeholder="密码"

secureTextEntry={!visible}

>

name={visible ? 'show' : 'close'}

onPress={handleVisilbe}

style={style.mRegisterPasswordIcon}

>

label="验证码"

style={style.mRegisterInput}

labelStyle={style.mRegisterLabelStyle}

value={code}

onChangeText={setCode}

placeholder="验证码"

>

originWhitelist={['*']}

source={{ html: captcha }}

>

containerStyle={style.mRegisterMoreBtn}

onPress={() => handleNav('Login')}

title="登录"

type="clear"

>

containerStyle={style.mRegisterMoreBtn}

onPress={() => handleNav('IndexForTab')}

title="游客"

type="clear"

>