ここでこの質問をするのは夢中ですが、フォームを送信してRNのデータをキャプチャする方法についての良いチュートリアルは見つかりません。私は見つけるのですかすべてが誰かがライブラリを推進している「ジャストNPMインストール・ネイティブ・フォーム・精霊・マジック・ボックスを反応させると、プロジェクトでそれを呼び出す」...React Nativeでフォームを送信する方法
を私はちょうど知ってほしい - どのように提出しますバニラの形態原産のネイティブ。
サンプルコード:
AuthContainer
class AuthContainer extends Component {
render() {
const { errorMessage, handleLogin } = this.props
return (
<Login
errorMessage={errorMessage}
onLoginClick={(e) => handleLogin(e)}
/>
)
}
}
.....
const mapDispatchToProps = (dispatch) => {
return {
handleLogin: (e) => {
e.preventDefault()
const form = e.target
const data = serialize(form, {hash: true})
const creds = { email:data.email, password: data.password }
dispatch(loginUser(creds))
},
}
}
ログイン
import { Container, Content, Form, Item, Input, Label, Button, Text } from 'native-base';
....
const Login = ({errorMessage, onLoginClick}) => {
return (
<Container>
<Content>
<Form >
{errorMessage &&
<Text>{errorMessage}</Text>
}
<Item floatingLabel>
<Label>Email</Label>
<Input
type="email"
name="email"
/>
</Item>
<Item floatingLabel last>
<Label>Password</Label>
<Input secureTextEntry={true} />
</Item>
<Button onPress={onLoginClick} ><Text>Sign in</Text></Button>
</Form>
</Content>
</Container>
)
}
質問:どのように私はちょうどAuthContainerのhandleLogin
機能で提出メールアドレスとパスワードをキャプチャすることができますか?
ああ、面白いです。したがって、RNのアプローチは、各変更後に入力から値を保存する制御された入力を100%使用することです。ボタンを押すだけで、そのデータで何かを行う関数が呼び出されます。私はコントロールされていない入力方法を考えていましたが、これはうまくいくでしょう。良い答えをありがとう – tim5046