如何在axios.interceptors内部调用错误模态

时间:2018-12-25 12:46:02

标签: javascript reactjs redux react-redux axios

我正在将AXIOS.interceptors与React + Redux一起使用。我需要的是,如果localStorage中的某些变量为空,则在其中触发错误模式组件。

我了解应返回诺言作为回应。但是我需要显示一个错误。

AXIOS.interceptors.response.use(function (response) {
  return response;
}, function (error) {

  const originalRequest = error.config;

  // checking localStorage for data
  const localMarker = !!localStorage.getItem('refresh') && !!localStorage.getItem('city') && !!localStorage.getItem('token');

  if (error.response.status === 401 && !originalRequest._retry) {
    if (localMarker) {
      return new Promise(function (resolve, reject) {
        AXIOS.get('/users/refresh', paramsRefresh)
        .then(({data}) => {
          // do something
        })
        .catch((err) => {
          // do something
        })
      });
    } else {
      // CALL ERROR MODAL COMPONENT LIKE <ErrorModal onClick={() => {}} />
    }
  }
}

如果localMarker = false,我期望得到一个错误模态。也许有人已经解决了这样的任务?

0 个答案:

没有答案