reactjs - 如何使用带有 prevState 的模板字符串与 useState() 挂钩?
问题描述
在以下表单输入代码中,我使用属性名称作为静态值并且它可以工作:
<input
name={inputName}
type="text"
placeholder={placeholder}
value={value}
onChange={(e) =>
setValue((prevState) => ({
...prevState,
customerName: e.target.value,
}))
}
style={{ fontFamily: "Jameel Noori Nastaleeq" }}
readOnly={readOnly}
/>
虽然如果我尝试将它用作作为道具传递给该组件的动态值,但它不起作用我该怎么做?
动态值错误代码:
<input
name={inputName}
type="text"
placeholder={placeholder}
value={value}
onChange={(e) =>
setValue((prevState) => ({
...prevState,
${`valueNameToUpdate`}: e.target.value,
}))
}
style={{ fontFamily: "Jameel Noori Nastaleeq" }}
readOnly={readOnly}
/>
解决方案
尝试这个
onChange={(e) =>
setValue((prevState) => ({
...prevState,
[valueNameToUpdate]: e.target.value,
}))
}
推荐阅读
- angular - 角度打字稿语法如何使用两个聚合对象访问返回数据
- c - atoi 有什么问题?
- javascript - FormData() - JQUERY
- javascript - 为什么我的 php 函数没有收到我通过 ajax 发送给它的数组
- reactjs - 为什么使用 create-react-app 时表单不提交?
- python - 烧瓶猜谜游戏没有正确响应
- python - 在 Django ORM 查询中转换日期时间对象
- mysql - 在 MySQLi 表中选择名称
- visual-studio-code - 在 VS Code 中,有没有办法以编程方式在 package.json 中设置语言的 filenamePatterns
- css - 在 CSS 动画期间让元素出现在与另一个相同的位置