Search…
⌃K

fetchToStateReceiver

Attribute name
Type
description
eventName
string
EventsReceiver event name
statePath
string
State name or path to state that will be replaced by fetch method response
fetchMethod
(eventData: any, state: any): Promise<any>
Fetch method. Method will be called when eventName emitted and must return Promise
fetchToStateReceiver method was created for fast state manage. You create method that return promise with new state. When event will be emited, method will be called and promise response replace required state.
Javascript
Typescript
import { fetchToStateReceiver } from 'eventrix';
import axios from 'axios';
const removeUser = (eventData, state, emit) => {
return axios.delete(`http://somedomain.com/users/${eventData.id}`)
.then(() => {
return state.users.filter(item => item.id !== eventData.id);
});
}
const receiver = fetchToStateReceiver('users:remove', 'users', removeUser);
export default receiver;
import axios from 'axios';
import { fetchToStateReceiver } from 'eventrix';
import { EmitI } from 'eventrix/types/interfaces';
import { StoreState, User } from '../interfaces';
const removeUser = (eventData, state, emit): Promise<User[]> => {
return axios.delete(`http://somedomain.com/users/${eventData.id}`)
.then(() => {
return state.users.filter(item => item.id !== eventData.id);
});
}
const receiver = fetchToStateReceiver('users:remove', 'users', removeUser);
export default receiver;