Effects — SolidJS

Effects menjalankan side effect yang otomatis re-run saat dependency berubah. createEffect import { createSignal, createEffect } from "solid-js" function App()

Effects menjalankan side effect yang otomatis re-run saat dependency berubah.

createEffect

import { createSignal, createEffect } from "solid-js"

function App() {
  const [count, setCount] = createSignal(0)

  createEffect(() => {
    // Re-run setiap kali count() berubah
    console.log("Count:", count())
    document.title = `Count: ${count()}`
  })

  return <button onClick={() => setCount(c => c + 1)}>+1</button>
}

Tracking Otomatis

Solid otomatis melacak signal mana yang dibaca di dalam effect. Tidak perlu dependency array seperti useEffect di React.

onCleanup di Effect

createEffect(() => {
  const timer = setInterval(() => console.log(count()), 1000)
  onCleanup(() => clearInterval(timer))
})

Yang akan kamu pelajari