Redux-Falcor
redux-falcor helps connect your Redux applications to your Falcor API.
Change Log
Installation
To install:
npm install --save redux-falcor
Usage
First include redux-falcor in the initial setup of your application.
import { createStore, combineReducers, applyMiddleware, compose } from 'redux';
import { createFalcorMiddleware, falcorReducer } from 'redux-falcor';
import { Model } from 'falcor';
const reducer = combineReducers({
entities: falcorReducer
});
const falcor = new Model({
cache: {
}
});
const finalCreateStore = compose(
applyMiddleware(createFalcorMiddleware(falcor))
)(createStore);
const store = finalCreateStore(reducer);
We can now access the data returned from Falcor through state.entities.*
. To
query that data we just need to dispatch a special action.
import { retrievePath } from 'redux-falcor';
store.subscribe(() =>
console.log(store.getState())
);
store.dispatch(retrievePath('usersById[35]["email"]');
While its not suggested, you can also hook into the Falcor promise directly if
you need to. For example:
import { retrieveValue } from 'redux-falcor';
store.dispatch(retrieveValue('usersById[35]["email"]').then((email) => {
console.log(email);
});
Licence
MIT