EventsReceiver
import { EventsReceiver } from 'eventrix';
const removeUserReceiver = new EventsReceiver(
'Users:remove.user',
(eventName, eventData, stateManager) => {
const usersList = stateManager.getState('users');
const newUsersList = usersList.filter(user => user.id !== eventData.id);
stateManager.setState('users', newUsersList);
}
);
export default removeUserReceiver;import { EventsReceiver } from 'eventrix';
import StateManager from 'eventrix/types/StateManager';
import { User } from '../interfaces';
interface RemoveUserEventData {
id: number;
}
const removeUserReceiver = new EventsReceiver<RemoveUserEventData, void>(
'Users:remove.user',
(eventName, eventData, stateManager) => {
const usersList = stateManager.getState<User[]>('users');
const newUsersList = usersList.filter(user => user.id !== eventData.id);
stateManager.setState<User[]>('users', newUsersList);
}
);
export default removeUserReceiver;import { EventsReceiver } from 'eventrix';
const usersReceiver = new EventsReceiver(
['Users:add.user', 'Users:remove.user'],
(eventName, eventData, stateManager) => {
const usersList = stateManager.getState('users');
if (eventName === 'Users:add.user') {
stateManager.setState('users', [...usersList, eventData]);
}
if (eventName === 'Users:remove.user') {
const newUsersList = usersList.filter(user => user.id !== eventData.id);
stateManager.setState('users', newUsersList);
}
}
);
export default usersReceiver;import { EventsReceiver } from 'eventrix';
import StateManager from 'eventrix/types/StateManager';
import { User } from '../interfaces';
interface RemoveUserEventData {
id: number;
}
const removeUserReceiver = new EventsReceiver<RemoveUserEventData | User, void>(
['Users:add.user', 'Users:remove.user'],
(eventName, eventData, stateManager): void => {
const usersList = stateManager.getState<User[]>('users');
if (eventName === 'Users:add.user') {
stateManager.setState<User[]>('users', [...usersList, eventData]);
}
if (eventName === 'Users:remove.user') {
const newUsersList = usersList.filter(user => user.id !== eventData.id);
stateManager.setState<User[]>('users', newUsersList);
}
}
);
export default removeUserReceiver;Complete example how use EventsReceiver
Last updated
Was this helpful?