小编vos*_*rsc的帖子

是否可以在 Reactjs 的 useState 中使用动态对象键?

我正在尝试从表单中获取数据,其中某些字段是动态的,因此它们的名称遵循以 1 或 2 结尾的星期几的模式。

在中onChange,我发送正在编辑的组件的名称,以便程序知道正在编辑什么输入,但是当我使用通过参数发送的名称时,它useState不会将其检测为变量,而是将其检测为普通字符串。

const [horas, setHoras] = useState({});  

const handleHoras = (e: any, nomb: string) => {
        setHoras({
            ...horas,
            nomb: e.target.value
        })
    }
Run Code Online (Sandbox Code Playgroud)

我尝试将状态声明为数组(如下所示),但变量不会覆盖自身,而是在每次值更改时添加具有相同名称的变量。


    const handleHoras = (e: any, nomb: any) => {
        setHoras(
            [
                ...horas,
                { 'name': nomb, 'value': e.target.value }
            ]
        )
    }

Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-hooks use-state

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

javascript ×1

react-hooks ×1

reactjs ×1

use-state ×1