Comment on page
Eventrix
Method | attributes | description |
constructor | initialState, eventsReceivers | Eventrix class constructor |
listen | eventName, listener | Add event listener |
unlisten | eventName, listener | Remove event listener |
emit | eventName, eventData | Emit event for eventrix instance it will run listeners and events receivers |
getState | path | Get eventrix state |
useReceiver | eventsReceiver | Register events receiver in eventrix instance it will be used on events emitted |
removeReceiver | eventsReceiver | Unregister events receiver from eventrix instance |
getParent | - | Get parent eventrix instance |
getFirstParent | - | Get first parent eventrix instance |
create | scopes | Create eventrix instance with scopes |
onError | errorCallback | callback function to catch errors in receivers and listeners called on emit events |
Javascript
Typescript
import { Eventrix, EventsReceiver } from 'eventrix';
const usersEventsReceiver = new EventsReceiver(
'createUserEventName',
(eventName, eventData, stateManager) => {
const user = eventData.user;
const users = stateManager.getState('usersList');
stateManager.setState('usersList', [user, ...users]);
}
);
const initialState = {
usersList: [],
}
const eventsReceivers = [
usersEventsReceiver,
];
const eventrix = new Eventrix(initialState, eventsReceivers);
export default eventrix;
import { Eventrix, EventsReceiver } from 'eventrix';
import StateManager from 'eventrix/types/StateManager';
interface User {
id: number;
name: string;
age: number;
}