React
HTML
<div id="app"></div>
React
const App = () => {
const [ selected, setSelected ] = React.useState([]);
const handleOnChange = (ev, id) => {
if (selected.includes(id)) {
// was already checked
setSelected(selected.filter(el => el !== id));
} else {
// was not checked
setSelected([...(selected), id]);
}
};
return (
<div>
<input type="checkbox"
key="1"
checked={ selected.includes("1") }
onChange={ (ev) => handleOnChange(ev, "1") }
/>
<input type="checkbox"
key="2"
checked={ selected.includes("2") }
onChange={ (ev) => handleOnChange(ev, "2") }
/>
<pre>{selected}</pre>
</div>
);
}
ReactDOM.render(<App />, document.querySelector("#app"))