【发布时间】:2020-12-29 23:53:51
【问题描述】:
我只是提供一个 console.log(数据)并导航到另一个屏幕。
但我遇到以下错误:
组件异常 undefined 不是对象
我做错了什么?
注意:当我使用时,navigation.goBack() 有效。
代码如下;
错误仍然存在
谁能帮帮我??
代码更新
import React, { useRef } from 'react';
import { useNavigation } from '@react-navigation/native';
import { Form } from '@unform/mobile';
import {
KeyboardAvoidingView,
Platform,
ScrollView,
Image,
} from 'react-native';
import logo from '../../assets/logo.png';
import Input from '../../components/Input';
import Button from '../../components/Button';
import { Container, FormContainer, Title, TitleContainer } from './styles';
export default function SignUp() {
const formRef = useRef(null);
const navigation = useNavigation();
const handleSignUp = data => {
console.log(data);
navigation.navigate('SignUpPersonalData', { data });
};
return (
<>
<KeyboardAvoidingView
style={{ flex: 1 }}
behavior={Platform.OS === 'ios' && 'padding'}
enabled
>
<ScrollView keyboardShouldPersistTaps="handled">
<Container>
<Image source={logo} />
<TitleContainer>
<Title>Crie sua conta</Title>
</TitleContainer>
<Form ref={formRef} onSubmit={handleSignUp}>
<Input
autoCorrect={false}
autoCapitalize="none"
keyboardType="email-address"
name="email"
icon="mail"
placeholder="E-mail"
/>
<Input
secureTextEntry
returnKeyType="send"
name="password"
icon="lock"
placeholder="Senha"
/>
<Button onPress={() => formRef.current.submitForm()}>
Continuar
</Button>
</Form>
</Container>
</ScrollView>
</KeyboardAvoidingView>
</>
);
截图错误:
SX
【问题讨论】:
-
通过正常的回调你得到数据?如果不放你的表单组件的代码
-
我通过输入组件的 ref 获取数据,如果我使用 State,我将正常获取数据@anthonywillismuñoz
-
我查看了官方小吃演示,当你发送数据时它也不起作用。我建议改用 formik
-
我解决了,谢谢大家
-
用它可以帮助某人的解决方案给出答案
标签: react-native react-navigation react-native-navigation react-navigation-stack