上次接触 React 是一年多以前了,再写的时候发现 antd 有了些改动。总结一下。
1. antd 表单取值和校验
ref={this.formRef}
首先要在表单上定义一个 ref。
formRef = React.createRef()
然后在 class 里面定义 formRef. 这个最好定义在比较靠前的位置,这样方便后面要用到的时候不会出现引用错误。
获取到 form 实例。这个地方代码我截掉了用不到的一段,这个 val 就是拿到的合法表单值。记得要写 catch ,因为 curForm 返回的是 Promise 对象,校验不通过又没有加 catch ,会容易在控制台报错。
handleAddOk = () =>{
const form = this.formRef.current;
const curForm = form.validateFields();
curForm.then(val => {
}).catch(errorInfo => {
console.log(errorInfo);
})
}
</