问题描述
我是React和React Native的新手,正在尝试了解一些东西。我希望有人可以向我解释我在这里做错了什么。我有一个对象,我正在尝试使用onChangeText设置自变量的值。该对象通过以下方式处理数据
const { data,updateUserDetails} = useContext(MembershipContext);
在表单字段
<TextInput
style={styles.inputStyle}
placeholder="First Name"
value={data.userDetails.fname}
onChangeText={(val) => updateUserDetails('fname',val)}
/>
并在上下文文件中
const updateUserDetails = (field,val) => {
setUserDetails([
...userDetails.field,val
]);
};
我正在尝试更新此状态
const [userDetails,setUserDetails] = useState({
fname: '',lname: '',address: '',city: '',state: '',zip: '',email: '',phone: '',password: '',});
我希望这足以分析。任何帮助将不胜感激
解决方法
Ciao,我认为您的问题在于您如何呼叫setUserDetails
。尝试将其替换为:
const updateUserDetails = (field,val) => {
setUserDetails({
...userDetails,[field]: val
});
};
应该解决问题。