In HTML, the attribute name is in all lowercase and is given a string invoking a function defined somewhere:
<button onclick="handleClick()"></button>
In React, the attribute name is camelCase and are passed the function reference inside curly braces:
<button onClick={handleClick} />
In HTML, false
can be returned to prevent default behavior, whereas in React preventDefault
has to be called explicitly.
<a href="#" onclick="console.log('The link was clicked.'); return false" />
function handleClick(e) { e.preventDefault() console.log("The link was clicked.") }
Extra Info
- HTML uses lowercase, React uses camelCase.
Additional links