Skip to main content

redux

Redux adapter for json-render's StateStore interface. Use when integrating json-render with Redux or Redux Toolkit for state management via @json-render/redux.

Quellinformationen

Repository
vercel-labs/json-render
Letzte Quellaktivität
7. März 2026 um 02:22
Erkannte Sprache von SKILL.md
Englisch
Sterne
18.686
Forks
992

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
redux
description
Redux adapter for json-render's StateStore interface. Use when integrating json-render with Redux or Redux Toolkit for state management via @json-render/redux.
# @json-render/redux Redux adapter for json-render's `StateStore` interface. Wire a Redux store (or Redux Toolkit slice) as the state backend for json-render. ## Installation ```bash npm install @json-render/redux @json-render/core @json-render/react redux # or with Redux Toolkit (recommended): npm install @json-render/redux @json-render/core @json-render/react @reduxjs/toolkit ``` ## Usage ```tsx import { configureStore, createSlice } from "@reduxjs/toolkit"; import { reduxStateStore } from "@json-render/redux"; import { StateProvider } from "@json-render/react"; // 1. Define a slice for json-render state const uiSlice = createSlice({ name: "ui", initialState: { count: 0 } as Record<string, unknown>, reducers: { replaceUiState: (_state, action) => action.payload, }, }); // 2. Create the Redux store const reduxStore = configureStore({ reducer: { ui: uiSlice.reducer }, }); // 3. Create the json-render StateStore adapter const store = reduxStateStore({ store: reduxStore, selector: (state) => state.ui, dispatch: (next, s) => s.dispatch(uiSlice.actions.replaceUiState(next)), }); // 4. Use it <StateProvider store={store}> {/* json-render reads/writes go through Redux */} </StateProvider> ``` ## API ### `reduxStateStore(options)` Creates a `StateStore` backed by a Redux store. | Option | Type | Required | Description | |--------|------|----------|-------------| | `store` | `Store` | Yes | The Redux store instance | | `selector` | `(state) => StateModel` | Yes | Select the json-render slice from the Redux state tree. Use `(s) => s` if the entire state is the model. | | `dispatch` | `(nextState, store) => void` | Yes | Dispatch an action that replaces the selected slice with the next state | The `dispatch` callback receives the full next state model and the Redux store.
Auf GitHub ansehen