使用 React-Final-Form 将输入值传递给 Axios POST
Pass input values with React-Final-Form to Axios POST
我有一个登录页面。
字段:用户名和密码。
在提交表单时,我想将 2 个输入值传递给一个函数,该函数将通过 Axios API.
处理 POST 调用
因为我使用的是 React-Final-Form,所以我没有看到有人使用 refs 作为输入来收集数据。
Final-Form 提供 values
作为道具,但我无法将它们传递给我的外部 handleClickSignIn
函数。
const handleClickSignIn = () => {
axios.post(url, data, {
headers: headers
})
.then(response => console.log(response))
.catch(err => console.log(err))
}
const focusOnError = createDecorators();
const SignIn = () =>
<Fragment>
<h1>Sign In page</h1>
<Form
onSubmit={handleClickSignIn}
decorators={[focusOnError]}
>
{
({
handleSubmit,
values,
submitting
}) => (
<form onSubmit={handleSubmit}>
<Field
name='email'
placeholder='Email'
validate={required}
>
{({ input, meta, placeholder }) => (
<div className={meta.active ? 'active' : ''}>
<label>{placeholder}</label>
<input {...input}
type='email'
placeholder={placeholder}
className="signin-field-input"
/>
etc...
你应该看看 documentation
onSubmit is a function that will be called with the values of your form
因此 handleClickSignIn
将在其第一个参数中检索表单值
const handleClickSignIn = (values) => {
// do what you want with the form values
axios.post(url, values, {headers: headers})
.then(response => console.log(response))
.catch(err => console.log(err))
}
我有一个登录页面。 字段:用户名和密码。
在提交表单时,我想将 2 个输入值传递给一个函数,该函数将通过 Axios API.
处理 POST 调用因为我使用的是 React-Final-Form,所以我没有看到有人使用 refs 作为输入来收集数据。
Final-Form 提供 values
作为道具,但我无法将它们传递给我的外部 handleClickSignIn
函数。
const handleClickSignIn = () => {
axios.post(url, data, {
headers: headers
})
.then(response => console.log(response))
.catch(err => console.log(err))
}
const focusOnError = createDecorators();
const SignIn = () =>
<Fragment>
<h1>Sign In page</h1>
<Form
onSubmit={handleClickSignIn}
decorators={[focusOnError]}
>
{
({
handleSubmit,
values,
submitting
}) => (
<form onSubmit={handleSubmit}>
<Field
name='email'
placeholder='Email'
validate={required}
>
{({ input, meta, placeholder }) => (
<div className={meta.active ? 'active' : ''}>
<label>{placeholder}</label>
<input {...input}
type='email'
placeholder={placeholder}
className="signin-field-input"
/>
etc...
你应该看看 documentation
onSubmit is a function that will be called with the values of your form
因此 handleClickSignIn
将在其第一个参数中检索表单值
const handleClickSignIn = (values) => {
// do what you want with the form values
axios.post(url, values, {headers: headers})
.then(response => console.log(response))
.catch(err => console.log(err))
}