Redux多输入框值更新异常:切换输入时前一个输入框被清空
Redux双输入框切换时内容丢失问题修复
问题根源:你在reducer的ONCHANGE_INPUT分支中,错误地使用了全局定义的初始initialUser对象作为拷贝基础,而非当前state里的initialUser状态。这会导致每次更新都从空的初始状态开始覆盖,切换输入框时之前输入的内容自然会被清空。
修复方案
修改reducer中的状态更新逻辑,将拷贝的基础对象换成当前state中的initialUser:
case CustomersActionsEnum.ONCHANGE_INPUT: const {value, name} = action.payload.currentTarget; // 用state.initialUser替代全局的initialUser return {...state, initialUser: {...state.initialUser, [name]: value}};
额外确认
确保组件中的initialUser是从Redux state中获取的,而非直接使用全局初始对象,比如通过useSelector获取:
import { useSelector } from 'react-redux'; const initialUser = useSelector((state) => state.yourReducerNamespace.initialUser);
内容的提问来源于stack exchange,提问作者Anton
相关产品推荐
相关产品推荐

