alloc / alloc/saus

Make state modules more ergonomic

Offen
#52 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
proposal roadmap
Vorherrschende Sprache
TypeScript
Sterne
38
Forks
1
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Currently, state modules typically look like normal variables (lowercased), and you use their `.get` or `.load` methods as appropriate. When unwrapping a state module into its raw value, it can be awkward to decide on what the unwrapped value's variable will be named. This proposal is a possible solution.

```ts
import { defineStateModule } from 'saus/client'

export const [getFoo, loadFoo] = defineStateModule(
'foo',
async function() {
// TODO: Load the foo
}
)
```

With this pattern, the awkwardness is avoided:

```ts
import { getFoo, loadFoo } from '../state/foo'

let foo = getFoo(1, 2, 3)

foo = await loadFoo(3, 4, 5)
```

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.