中等
技术面试0 次浏览华为的一些前端项目涉及复杂的用户交互,如表单验证和提交。请设计一个使用React实现的表单验证和提交功能,要求验证输入的邮箱格式和密码长度(至少6位)。
华为前端工程师
React表单验证用户交互
答题要点
可以使用STAR法则来作答。Situation(情景):说明在处理前端复杂表单交互时,需要确保用户输入的有效性。Task(任务):设计一个React表单组件,实现邮箱格式和密码长度的验证及提交功能。Action(行动):首先,创建表单组件和状态管理,使用 `useState` 钩子管理表单数据和错误信息。其次,编写验证函数,使用正则表达式验证邮箱格式,判断密码长度。然后,在表单提交时调用验证函数。Result(结果):确保只有验证通过才能提交表单,否则显示相应的错误信息。示例:在一个需要用户注册的项目中,我会创建一个 `RegisterForm` 组件。用 `useState` 管理 `email` `password` 和 `errors` 状态。编写 `validateEmail` 和 `validatePassword` 函数进行验证,在 `onSubmit` 事件中调用这些函数,若验证通过则提交表单,否则显示错误。