用户停止输入后处理更新的最佳方法是什么?

时间:2018-12-27 19:04:50

标签: javascript reactjs

我有一个子组件表单,一旦用户停止键入,我就会传递和updateDraft函数。这是处理它的最佳方法吗?

const updateTimer = (props) => {
    if (this.timeout) clearTimeout(this.timeout)
    this.timeout = setTimeout(() => {
        props.updateDraft
    }, 5000)
};

    const Form = (props) => {

        return(
            <Input type="text" 
    onKeyUp={updateTimer(props)} 
    onChange={props.onChange} 
    />
        )

    }

1 个答案:

答案 0 :(得分:1)

您可以使用onblur-用户退出表单时。如果您的功能没什么要做的,则可以轻松使用onchangeonkeyup。正如@AndrewL提到的那样,您还可以添加按钮,但是这些解决方案中的任何一个都比设置超时更好。