Skip to main content
Version: 2.0

useStore()

A useStore() function in State-jet represents a global store, enabling the combination of slices.

function useStore<T extends Record<string, ReturnType<typeof useSlice>>>(initializer: () => T)

useStore() returns the same properties as mentioned here for each slice instances.

✅ Example: Creating store for Ecommerce App

Setup Slices file (src/store/slices.ts):

src/store/slices.ts
import { useSlice } from "state-jet";

const productSlice = useSlice("products");
const cartSlice = useSlice("cart");

export const useProductSlice = () => productSlice("productState", {});
export const useCartSlice = () => cartSlice("cartState", {});

Setup Store file (src/store/index.ts):

src/store/index.ts
import { useStore } from "state-jet";
import { useProductSlice, useCartSlice } from "./slices";

/**
* Ecommerce store with product and cart slices
*/
const initializer: any = () => ({
products: useProductSlice(),
cart: useCartSlice()
});

export const useEcommerceStore = () => useStore(initializer);

Check out this tutorial for a complete example of useStore in action.