@berlitz/form

中文文档
9.22.20发布于 2026/05/26MITCommonJS近 30 天下载 2374

Form component for the Max Design System

原始使用文档
文档目录3 节
  1. Installation
  2. Props
  3. Usage

Form npm version

Creates a form from a provided schema.

Installation

yarn add @berlitz/form

Props

ArgumentTypeRequiredDefaultNotes
actionstring✅Added to the action attribute on the <form> element. Useful for making forms work when Javascript is disabled.
fieldsarray✅Schema for generating the form fields. Refer to the proptypes for the required shape.
onSubmitfunction✅Callback used to handle form submission. onSubmit(values, setSubmitting, setStatus, resetForm)
enableReinitializeboolean❌trueSets the Formik enableReinitialize prop. More info https://tinyurl.com/rzwvmhr
methodstring❌'post'Sets the method attribute on the <form> element.
hiddenFieldsarray❌Schema for generating hidden form fields.
lightboolean❌falseSets the background to a solid colour and changes all labels and text in the form to be light.
loadingLabelstring❌'Loading'Text for the submit button when it is loading.
onChangefunction❌Callback used to handle form changes. onChange(values)
submitLabelstring❌'Submit'Text for the submit button.
termsLabelstring❌Text for a Terms and Conditions checkbox. The checkbox will not show if no text is provided.
submitButtonRefobject❌A ref that is passed to the <SubmitButton /> on this form. Useful for triggering submit events outside of this component.
hideSubmitButtonboolean❌Useful in combination with submitButtonRef for showing a custom submit button outside of this component.

Usage

import Form from '@berlitz/form'

<Form
  action="/"
  onSubmit={(values, setSubmitting) => {
    alert(values)
    setTimeout(() => {
      setSubmitting(false)
    }, 2000)
  }}
  submitLabel="Find out more"
  fields={fields}
  hiddenFields={hiddenFields}
  termsLabel="I accept the terms"
  onChange={values => {
    setValues(values)
  }}
  light
/>

版本与发布记录

@berlitz/form 共发布 355 个版本,首次发布于 2019/01/30;过去 12 个月发布了 4 个版本。

版本发布日期距今
9.22.20latest2026/05/265 个月前
9.22.192026/04/156 个月前
9.22.182026/03/098 个月前
9.22.172026/01/229 个月前
9.22.142025/06/031.4 年前
9.22.132025/05/281.4 年前

其他发布通道:canary → 9.11.11-test.0。

关于 @berlitz/form 的常见问题

@berlitz/form 是什么?

Form component for the Max Design System

如何安装 @berlitz/form?

在项目目录运行 npm install @berlitz/form,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(16.13.1)、styled-components(5.2.3)、@loadable/component(^5.13.1)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@berlitz/form 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/berlitz__form 是否存在。

@berlitz/form 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@berlitz/form 可以商用吗?

@berlitz/form 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@berlitz/form 的下载量有多少?

根据 npm 官方下载统计,@berlitz/form 在 2026/10/08 – 2026/11/06 这 30 天内被下载 2,374 次,日均约 79 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@berlitz/form 还在维护吗?

最新版本 9.22.20 发布于 2026/05/26(5 个月前);至今共发布 355 个版本,其中过去 12 个月发布了 4 个;首次发布于 2019/01/30。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。