The above solution does not seem to work for me, but if we talk about counter values ββin state, then its receipt is controlled properly by writing the Copy handler below (Update state values).
import React from 'react'; import ReactDOM from 'react-dom'; import PropTypes from 'prop-types'; import ReactDOMServer from 'react-dom/server'; class App extends React.Component { constructor(props) { super(props); this.state = { time: '', timer: false, counter: 0 }; } handlerCopy(e) { var val = this.state.counter; val = val + 1; this.setState({ counter: val }, function(){ console.log('new acounter:- ', this.state.counter); }) alert('Don\'t copy it!'); } render() { return ( <React.Fragment> <p onCopy={(e) => this.handlerCopy(e)}>Copy me!</p> <p>Copy count: {this.state.counter}</p> </React.Fragment> ); } } document.addEventListener('click', function(e) { console.log('propagation',e) }, false); export default App;
This handlerCopy function mentioned above doesn't make any changes to me @Max Wolfen
handlerCopy(e) { console.log(e.target.innerHTML); e.preventDefault(); e.nativeEvent.stopImmediatePropagation(); this.setState(prevState => ({ counter: prevState.counter + 1 })); alert('Don\'t copy it!'); }
Hemant nagarkoti
source share