06-开始使用表单
5.2.1 开始使用表单
前端框架之间并没有标准的表单处理方式。在一些框架和库中,可以设置表单模型,该模型会随用户更改表单值而进行更新并且内置了专门的方法检测表单何时处于不同的状态。另一些框架和库在表单方面实现了不同的范式和技术。这些框架的共同之处在于它们处理表单的方式稍有不同。
我们应该如何看待这些不同的方法呢?一个比另一个更好吗?很难说一种方法是否从根本上优于另一种,但有时“更容易使用”的方法可能隐藏潜在的机制和逻辑。这并非总是坏事——有时候开发者并不需要了解框架的内部实现。但是,开发者确实需要有足够的理解来支撑一个思维模型,而该模型让开发者能够创建可维护的代码并在bug出现时修复它们。在我看来,这正是React的亮点所在。当涉及表单时不会给开发者太多“魔法”,他们会在必须过多了解表单和过少了解之间找到很好的中间地带。
幸运的是,React中表单的思维模型更多的是你已经了解的东西,并没有特别的API集合需要使用,表单只是我们在React中看到的东西:组件!开发者使用组件、状态和属性来创建表单。因为是基于之前所学进行构建,所以在继续之前先来回顾一下React思维模式的部分内容。
- 组件有两种主要的方式处理数据:状态和属性。
- 因为组件是JavaScript类,所以除了生命周期钩子,组件还可以拥有自定义的类方法,它们可以用来响应事件和做任何事情。
- 与常规的DOM元素一样,可以在React组件上监听诸如点击、输入变化和其他事件。
- 父组件(如表单元素)可以将回调方法作为属性提供给子组件,使组件之间能够通信。
在构建用于创建帖子的组件时,将使用这些熟悉的React思想。