【发布时间】:2020-01-27 20:06:47
【问题描述】:
import React, { useState, useEffect } from "react";
import { useSelector, useDispatch } from "react-redux";
import { editZoneMaster } from "../../../redux/actions/GeneralMaster/ZoneMaster";
export default function ModalForm() {
let dispatch = useDispatch();
const [formData, setFormData] = useState({});
const [state, setState] = useState({
open: false
});
const UI = useSelector(state => state.UI);
const handleOpen = () => {
setState({
...state,
open: true
});
};
const handleClose = () => {
setState({
...state,
open: false
});
};
const onChange = e =>
setFormData({ ...formData, [e.target.name]: e.target.value });
const handleSubmit = async e => {
e.preventDefault();
dispatch(editZoneMaster(formData));
console.log(UI.errors)
console.log(Object.keys(UI.errors).length)
if (Object.keys(UI.errors).length === 0) handleClose();
};
控制台输出:
我正在尝试验证我的表单,以防止用户在检测到任何错误时关闭模式。在第一次提交时没有记录错误,只有在第二次提交时才会记录。状态正在正确更改。此外,在返回错误时,它运行良好。但不在渲染中。
【问题讨论】:
-
能分享一下redux的代码吗?
标签: reactjs redux react-redux react-hooks