javascript - 在 ReactJS 中使用表单的最佳实践是什么?
问题描述
在 VanilaJs 中,我们在 onSubmit 期间从表单中获取数据,使用 FormData 发出请求。在 ReactJ文档中,我们看到在提交之前建议设置引入用户的状态数据。在点击提交按钮后,我们从状态中获取这些数据并发出请求。那么使用 React 处理表单是最好的方法吗?
解决方案
您也可以在此处执行与旧方法相同的操作,但问题是您正在延迟表单提交,因为 HTML 集合需要更多时间来迭代而不是查找和管理状态。看例子:
import React from 'react';
class Login extends React.Component {
login(event) {
event.preventDefault();
const data = {};
const inputs = event.getElementsByTagName('input');
for (let input of inputs) data[input.id] = input.value;
// send `data` to server to test for login
console.log(data);
}
render() {
return (
<form onSubmit={this.login}>
<input id="email" type="email" />
<input id="password" type="password" />
<button type="submit">Login</button>
</form>
);
}
}
想象一下从 DOM 获取然后迭代每个元素所花费的时间,而不是在表单提交期间管理每个按键的状态。
推荐阅读
- shell - 有没有在我的 WLS Ubuntu 18.04 上安装 DRAKE 的解决方案
- php - How To Make this table
- android - 按钮不会移动到 EditText 旁边
- java - 界面中的 JPA Hibernate 更新查询
- css - Oracle APEX 主题 CSS 左上角汉堡
- c++ - 从派生类访问基类中的类型别名
- python - 如何执行这个嵌套的 while true 循环?
- python - 如何有效地找到最近的二维点/点
- c++ - C++ 从原始 img 读取 16 位二进制数据并将它们存储在向量中
- c++ - 为什么 const 变量在 C++ 中是左值?