【问题标题】:Using Formik in react to post data使用 Formik 响应发布数据
【发布时间】:2020-08-09 18:25:40
【问题描述】:

我是 react 初学者,想要一些关于 formik 表单帖子的建议。 我应该把什么传给 onSubmit?

import React from 'react';
import './style/App.css';
import {LoginForm } from "./login/LoginForm"

function App() {

  return <div style={{textAlign : "center"}}>
    <LoginForm onSubmit={({})=>{
      
    }} />
  </div>
}

export default App;

我也有这种方式的 LoginForm:

interface Values {
  username: string;
  password: string;
}

interface Props {
  onSubmit: (values: Values) => void;
}

export const LoginForm: React.FC<Props> = ({ onSubmit }) => {
  return (
    <Formik
      initialValues={{ username: "", password: "" }}
      onSubmit={values => {

      }}>

      {({ values }) => (
        <Form>
          <div>
            <Field
              name="username"
              placeholder="Username"
              component={MyField}
            />
          </div>
          <div>
            <Field
              type="password"
              name="password"
              placeholder="Password"
              component={MyField}
            />
          </div>
          <Button type="submit">submit</Button>
        </Form>
      )}
    </Formik>
  );
};

我通过需要将值传递给接口来发布。我不能在 LoginForm 中做到这一点。从这个意义上说,该组件将毫无用处。怎么做?

【问题讨论】:

    标签: reactjs formik onsubmit


    【解决方案1】:

    您只需传递处理值的函数,例如,使用“fetch”内置 JS 或“axios”包通过“post”或“get”请求向后端发送请求,

    Formik 会将字段值发送到该函数(您传递给 OnSubmit 的那个),然后您根据需要处理它们。

    【讨论】:

    • onSubmit(values); axios.post('localhost:3000/auth/login', { 用户名:values.username,密码:values.password })
    • 我应该写什么到 { }} />
    • 我需要渲染到另一个页面,但不知道该怎么做
    猜你喜欢
    • 2018-07-31
    • 1970-01-01
    • 2011-06-24
    • 1970-01-01
    • 2015-11-08
    • 2015-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多