Skip to content

Formik #83

@yaofly2012

Description

@yaofly2012

表单痛点

  1. 值的获取,同步(React Form很繁琐);
  2. 验证;
  3. 提交过程处理

Formik

image

keeping track of values/errors/visited fields, orchestrating validation, and handling submission

核心就是状态收集,除了values之外还有其他的相关状态:

  1. initialValues
    initialValues是必须的,用于初始化values
  2. values
  3. errors
  4. touches

并且它们都是同构的

initialValues的必要性?

子组件如何访问Formik组件的状态和方法?

这就涉及如何使用Formik了。

  1. Render props方式;
  2. Hooks

form方法:

  1. handleChange
  2. handleBlur

注意:handleChangehandleBlur的实参必须是SyntheticEvent。但有些UI库中InputonChange事件处理函数只是value值,如果遇到这种情况可以利用Formik的方法显示的更新值。

Formik只做逻辑,不做UI。

把逻辑和UI分开是很明智的,更容易扩展。
Formik只做逻辑部分。

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions