Skip to content
This repository was archived by the owner on Feb 27, 2020. It is now read-only.

akryl-kt/akryl-store

Repository files navigation

Akryl Store

Reactive store library for Akryl.

Installation

Gradle

  1. Add jcenter repository:
repositories {
    jcenter()
}
  1. Add dependency:
dependencies {
    compile "io.akryl:akryl-store:<version>"
}

Usage

Define store class:

class CounterStore : Store() {
  // state
  var count = 0

  // action
  fun increment() {
    count += 1
  }
}

Define context to use store inside components:

val CounterContext = StoreContext.create<CounterStore>()

Use store inside components:

class CounterView : Component() {
  override fun render(): ReactNode {
    val store = Store.of(CounterContext)
    return Div(
      Text("Count = ${store.count}"),
      Button(text = "Increment", onClick = { store.increment() })
    )
  }
}

About

Reactive store library for Akryl

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages