Getters
Vaxee provides a getter function for creating reactive getters. This function ensures that when the getter changes, all components automatically update accordingly. It needs for creating computed properties based on the another reactive properties.
Create a Getter
To create a getter, use the getter function from the createStore callback.
ts
import { createStore } from "vaxee";
export const useCounterStore = createStore("counter", ({ state, getter }) => {
const count = state(0);
const double = getter(() => count.value * 2);
return {
count,
double,
};
});TIP
See how to use a getter in the Store page and Using a store section.
WARNING
Any property that is not defined using the getter function won't be a reactive property, even if it's a computed.
TypeScript
You can pass a generic type to the getter function to define the type of the getter.
ts
interface User {
name: string;
age: number;
}
export const useUserStore = createStore("user", ({ state, getter }) => {
const user = state<User>({
name: "John",
age: 25,
});
const isAdult = getter<boolean>(() => user.value.age >= 18);
return {
user,
isAdult,
};
});