从类组件迁移到功能组件,setState作为useState

时间:2019-06-22 10:25:44

标签: reactjs react-hooks

从RCC迁移到RFC时,是否有任何简单的方法来设置状态变量,如下所示?

所以在我的RCC中,我有类似的东西。

changeState(e) {
    this.setState({
        [e.currentTarget.name]: e.currentTarget.value
    })
}

是否可以在RFC中编写它?

2 个答案:

答案 0 :(得分:0)

怎么样

import { useState, useCallback } from 'react';

const [state, setState] = useState({});
const changeState = useCallback((e) => {
    setState(oldState => ({ ...oldState, [e.currentTarget.name]: e.currentTarget.value }))
}, [])

答案 1 :(得分:0)

我有一个handleChange函数,它接受一个set函数作为参数并将其捆绑为自己的自定义钩子。

handleChange = (setFunction, e) => {
  setFunction(e.target.value)
}

然后在您的组件中可以使用类似的

event => handleChange(setName, event)