【发布时间】:2017-05-28 20:49:46
【问题描述】:
import React from "react";
import axios from "axios";
import {push} from "react-router-redux";
import {actionTypes} from "../Patient/actions";
import {put, call} from "redux-saga/effects";
import {updatePermissionsAction} from "../Patient/actions"
// Add a response interceptor for getting permissions
axios.interceptors.response.use(function(response) {
console.log("in interceptorXXXXXXXXXXX");
if(response.headers.permissions == null) {
return response;
}
var permissions = response.headers.permissions.split(',');
permissions.forEach((permission, index, permissionArray) => {
permissionArray[index] = permission.trim();
});
put({
type: actionTypes.UPDATE_PERMISSIONS,
permissions: permissions
});
return response;
}, function (error) {
// Do something with response error
});
正在调用拦截器,但 put 无效。当我的 sagas 调用工作正常的减速器时。
也许拦截器不能使用这种模式?有没有办法从拦截器调用reducer?
【问题讨论】:
标签: redux interceptor reducers axios