Bundle endpoints as callable, reusable services
Axios Actions comprises a small set of classes which collate URLs or URL request configs as callable actions.
First, define your endpoints:
const actions = {
<action>: '<url>',
<action>: '<config>',
...
}
Then, encapsulate them as one of the built-in services:
const service = new <ApiClass>(axios, actions)
Finally, call them:
service
.<action>(<data>)
.then(<handler>)
This service-based approach:
- removes brittle configuration from components and stores
- encapsulates additional logic (such as load state and handlers) within the service
- ensures application code stays simple and semantic
- provides a dedicated layer for API interaction
There are lots of other goodies in the library which take the drudgery out of working with APIs!
Start reading:
Demos:
Installation:
npm i -S axios-actions