Custom Stores — Svelte

Custom store membungkus logic bisnis di dalam store yang expose API tertentu. Membuat Custom Store import { writable } from "svelte/store" function createCounte

Custom store membungkus logic bisnis di dalam store yang expose API tertentu.

Membuat Custom Store

import { writable } from "svelte/store"

function createCounter() {
  const { subscribe, set, update } = writable(0)

  return {
    subscribe,
    increment: () => update(n => n + 1),
    decrement: () => update(n => n - 1),
    reset: () => set(0),
  }
}

export const counter = createCounter()

Menggunakan

<script>
  import { counter } from "./counter.js"
</script>

<p>{$counter}</p>
<button on:click={counter.increment}>+</button>
<button on:click={counter.decrement}>-</button>
<button on:click={counter.reset}>Reset</button>

Pattern ini memastikan store hanya bisa diubah melalui method yang sudah ditentukan.

Yang akan kamu pelajari