我是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: '',
});
我希望这足以分析。任何帮助将不胜感激
答案 0 :(得分:1)
Ciao,我认为您的问题在于您如何呼叫setUserDetails
。尝试将其替换为:
const updateUserDetails = (field, val) => {
setUserDetails({
...userDetails, [field]: val
});
};
应该解决问题。