React onClick 垃圾邮件队列并稍后触发?
React onClick spamming queues and fires later?
除非我做错了什么,否则在我多次单击按钮后,onClick 方法似乎会触发多次。就像它以某种方式排队和去抖一样。
import React from 'react';
import { render } from 'react-dom';
class Button extends React.Component {
onClick = (e) => {
console.log('click');
}
render() {
return (
<button onClick={this.onClick}>Click me fast</button>
);
}
}
render(<Button />, document.getElementById('app'));
当我点击按钮的速度非常快时,我在日志中得到了这个输出。第二批事件(11 次点击)在第一批事件发生后大约 1 秒出现。
这是 react/jsx 故意的,是错误还是我做错了什么?
感谢任何指点!
更新
此问题仅在我使用 BrowserSync
时出现
我遇到的问题更多地与 BrowserSync 相关,而不是与 React 相关。要解决它,只需在 BrowserSyncs UI 视图的 "Sync options" 设置中禁用 "Mirror clicks across devices"。
除非我做错了什么,否则在我多次单击按钮后,onClick 方法似乎会触发多次。就像它以某种方式排队和去抖一样。
import React from 'react';
import { render } from 'react-dom';
class Button extends React.Component {
onClick = (e) => {
console.log('click');
}
render() {
return (
<button onClick={this.onClick}>Click me fast</button>
);
}
}
render(<Button />, document.getElementById('app'));
当我点击按钮的速度非常快时,我在日志中得到了这个输出。第二批事件(11 次点击)在第一批事件发生后大约 1 秒出现。
这是 react/jsx 故意的,是错误还是我做错了什么?
感谢任何指点!
更新 此问题仅在我使用 BrowserSync
时出现我遇到的问题更多地与 BrowserSync 相关,而不是与 React 相关。要解决它,只需在 BrowserSyncs UI 视图的 "Sync options" 设置中禁用 "Mirror clicks across devices"。