Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何从redux查询响应中获取标题?_Reactjs_React Redux - Fatal编程技术网

Reactjs 如何从redux查询响应中获取标题?

Reactjs 如何从redux查询响应中获取标题?,reactjs,react-redux,Reactjs,React Redux,我正在发送一个查询请求,并从服务器得到一个响应。响应头包含一些我想要读取的信息。我可以看到错误选择器中有ResponseHeader,但我不知道如何获取成功案例的标题 从 在上面的代码中,假设对/api/notification/${props.notificationId}的调用返回一个带有标题标记“MyTag”的响应,如“MyTag:X123” 我想在mapStateToProps中的某个地方读到这一点。有什么想法吗? 谢谢 找到了答案。显然,QuerySelector有一个函数header

我正在发送一个查询请求,并从服务器得到一个响应。响应头包含一些我想要读取的信息。我可以看到错误选择器中有ResponseHeader,但我不知道如何获取成功案例的标题

在上面的代码中,假设对/api/notification/${props.notificationId}的调用返回一个带有标题标记“MyTag”的响应,如“MyTag:X123”

我想在mapStateToProps中的某个地方读到这一点。有什么想法吗?
谢谢

找到了答案。显然,QuerySelector有一个函数
headers
,没有在中记录。

找到了它。显然,QuerySelector有一个函数
headers
,在中没有记录

import { connect } from 'react-redux';
import { querySelectors } from 'redux-query';
import { connectRequest } from 'redux-query-react';

const getQueries = state => state.queries;

const getNotification = (state, notificationId) => {
  return (state.entities.notificationsById || {})[notificationId];
};

class NotificationView extends Component {
  // ...
}

const mapStateToProps = (state, props) => ({
  isLoading: mapPropsToConfigs(props).some(queryConfig =>
    querySelectors.isPending(getQueries, queryConfig),
  ),
  notification: getNotification(state, props.notificationId),
});

const mapPropsToConfigs = props => [
  {
    url: `/api/notification/${props.notificationId}`,
    transform: responseBody => {
      const { notification } = responseBody.data;

      return {
        notificationsById: {
          [notification.id]: notification,
        },
      };
    },
    update: {
      notificationsById: (prevValue, newValue) => ({
        ...prevCharts,
        ...newValue,
      }),
    },
  },
];

const NotificationViewContainer = compose(
  connect(mapStateToProps),
  connectRequest(mapPropsToConfigs),
)(NotificationView);