29 lines
760 B
JavaScript
29 lines
760 B
JavaScript
'use strict';
|
|
|
|
exports.__esModule = true;
|
|
exports.default = routerMiddleware;
|
|
|
|
var _actions = require('./actions');
|
|
|
|
/**
|
|
* This middleware captures CALL_HISTORY_METHOD actions to redirect to the
|
|
* provided history object. This will prevent these actions from reaching your
|
|
* reducer or any middleware that comes after this one.
|
|
*/
|
|
function routerMiddleware(history) {
|
|
return function () {
|
|
return function (next) {
|
|
return function (action) {
|
|
if (action.type !== _actions.CALL_HISTORY_METHOD) {
|
|
return next(action);
|
|
}
|
|
|
|
var _action$payload = action.payload,
|
|
method = _action$payload.method,
|
|
args = _action$payload.args;
|
|
|
|
history[method].apply(history, args);
|
|
};
|
|
};
|
|
};
|
|
} |