React.js onChange = {value => {}}多个值

时间:2019-06-25 06:22:15

标签: javascript reactjs onchange

我正在尝试抽象一些源代码,我知道其他语言,但对React.js知之甚少。

我希望获得更多信息,以了解为何仅击中第二个onchange

我希望就如何在更改时更新“值”和“拖动值”提供帮助

onChange={value => {                        
    this.setState({value});
    console.log("value value")
    console.log(value, drag_value)

    if (updatemode === 'drag') {
        setProps({value});
    }
    if (updatemode === 'hybrid') {
        setProps({drag_value});
    }
}}
onChange = {drag_value => {
    this.setState({drag_value});
    console.log("drag value")
    console.log(value, drag_value)

    if (updatemode === 'drag') {
        setProps({value});
    }
    if (updatemode === 'hybrid') {
        setProps({drag_value});
    }
}}

2 个答案:

答案 0 :(得分:2)

您要用同一个名称来破坏2个函数,并且基本上覆盖第一个函数。

最好使用诸如“ handleChange”和“ handleDragChange”之类的名称,以免有所不同。

答案 1 :(得分:0)

您正在用第二个handleChange覆盖第一个handleChange。因此,如果您颠倒它们的顺序,则您的handleChangevalue将会被击中,就像在javascript中那样,将考虑所有函数的最终声明。为避免这种情况,请给您的函数起不同的名称,并注意它们的作用。 希望这会有所帮助!