Redux middleware that validates incoming actions with Flux Standard Action.
npm install redux-fsa-linter --save-dev
import { createStore, applyMiddleware } from 'redux';
import thunk from 'redux-thunk';
import createLinter from 'redux-fsa-linter';
const linter = createLinter();
const createStoreWithMiddleware = applyMiddleware(
thunk,
linter
)(createStore);
The middleware will ignore anything passing through it that is not a plain object.
By default, the linter will alert the user of non-compliant actions by way of console warnings. Passing {strict: true}
to the createLinter
function will result in non-compliant actions throwing errors.
createLinter
can also take an ignore
function on the options object. This predicate is handed the incoming action, and the linter will ignore the action if the function returns a truthy value:
const ignore = ({ type }) => type === 'IGNORE_ME'
const createLinter({ ignore })
This may be useful if you are using third-party libraries that may dispatch non-FSA actions.