didact icon indicating copy to clipboard operation
didact copied to clipboard

feat(useState): allow passing new state directly

Open devhammed opened this issue 4 years ago • 0 comments

Currently, you need to write a function to setState but this PR allows passing the state value directly just like in React:

/** @jsx Didact.createElement */
function Counter() {
  const [state, setState] = Didact.useState(1)

  return (
    <div>
      <p>Count: {state}</p>
      <button onClick={() => setState(c => c - 1)}>Decrement</button>
      <button onClick={() => setState(0)}>Reset</button>
      <button onClick={() => setState(c => c + 1)}>Increment</button>
    </div>
  )
}
const element = <Counter />
const container = document.getElementById("root")
Didact.render(element, container)

devhammed avatar Feb 23 '21 10:02 devhammed