在一个名为room的常量中有一个数组对象值.
room = [
{name: "buger", placeId: 252}
{name: "pack", placeId: 253}
{name: "apple", placeId: 254}
{name: "peach", placeId: 255}
]
此时,每当我在TextInput中写入字符时,我想使用onChangeroom函数来更改文件室中name的值.
因此,当我在onChangeRoom函数中运行setRoom并附加["name"]时,出现了一个意外的令牌错误.
如何更改代码以更改房间名称?
下面是我的代码.
const [room, setRoom] = useState(
targetFarm.children.map((v) => ({ name: v.name, placeId: v.placeId }))
)
const onChangeroom = useCallback((index) => (text) => {
setRoom({ ...room, [index]["name"]: text }); // << this might cause error
}, []);
{targetFarm.children.map((item, index) => {
return (
<TextInput
style={{ backgroundColor: 'orange' }}
value={room[index]["name"]}
onChangeText={onChangeroom(index)}
/>
...
)
}