三次点击作为 React 上的事件?

Triple click as events on React?

三次点击

当我处于项目的开发阶段时,我喜欢调整表单以使用一个 三次单击事件 来填充所有字段(div 或 header 通常),只是为了避免手动填写所有 individual 输入。我选择三次点击,因为它更难被用户错误地执行。

反应事件

在 Javascript 中,我们可以在应用程序的 React 组件上附加自定义事件,因为我们有 onClick 事件和 onDoubleClick 事件,但我不知道如何实现以增加点击次数。换句话说,如何模拟 onTripleClick() 事件。

示例代码

render() {
    return (
        <FormComponent>

            <FormHeader
                onClick={this.doWhatever}
                onDoubleClick={this.doMore}
                onTripleClick={this.fillFormWithSampleData}
            >
                Create Promotion
            </FormHeader>

            {/* ... */}
            {/* ... */}
            {/* ... */}

            {/* Tons of things here */}

        </FormComponent>
    );
}

我想知道是否有人知道 React 中是否有本地方法来处理这个问题,因为我不想使用第三方库,也不想 jQuery。关于如何做到这一点有什么想法吗?

这不是与 React 相关的问题,您通常可以使用 javascript 来完成。 您可以收听 1 次点击事件并检查事件的详细信息对象(随后的点击次数)。
例子:

var trippleEl = document.getElementById('tripple');
trippleEl.addEventListener('click', function (e) {
    if (e.detail === 3) {
        console.log('3 times a charm');
    }
});
<h1 id="tripple">hi there</h1>

只需查看活动详情:

class Test extends React.Component{
    onClick(e){
        console.log(e.detail === 3? "tripple click" : "not tripple click");
    }
    render(){
        return <div onClick={this.onClick}>click</div>;
    }
}