Reactjs Redux | Uncaught(承诺中)类型错误:无法读取属性';数据';未定义的,这是我的有效载荷

Reactjs Redux | Uncaught(承诺中)类型错误:无法读取属性';数据';未定义的,这是我的有效载荷,reactjs,redux,axios,Reactjs,Redux,Axios,我收到一个指向我的reducer文件的错误。请求的响应似乎是正常的,我将响应记录在以下内容中: 对象{数据:对象,状态:200,状态文本:“确定”,标题:对象,配置:对象…} 配置 : 对象 数据 : 对象 哈斯莫尔结果 : 真的 搜索结果 : 阵列(10) proto : 对象 标题 : 对象 要求 : XMLHttpRequest 地位 : 200 状态文本 : “好的” proto : 反对 操作文件: import axios from 'axios'; import { FETCH_U

我收到一个指向我的reducer文件的错误。请求的响应似乎是正常的,我将响应记录在以下内容中:


对象{数据:对象,状态:200,状态文本:“确定”,标题:对象,配置:对象…} 配置 : 对象 数据 : 对象 哈斯莫尔结果 : 真的 搜索结果 : 阵列(10) proto : 对象 标题 : 对象 要求 : XMLHttpRequest 地位 : 200 状态文本 : “好的” proto : 反对

操作文件:

import axios from 'axios';
import { FETCH_USERS, FETCH_USER } from './types';

const BASE_URL = "http://api_address/member-search"
export function fetchUsers(id,first_name, last_name, dob) {
  const request = axios.post(${BASE_URL}?patientId=${id}&firstName=${first_name}&lastName=${last_name}&dateOfBirth=${dob}&length=10).then(function (response){
  });
  return {
    type: FETCH_USERS,
    payload: request
  };
}
减速器锉

import _ from 'lodash';
import {
  FETCH_USERS, FETCH_USER
} from '../actions/types';

export default function(state = [], action) {
  switch (action.type) {
    case FETCH_USER:
      return { ...state, [action.payload.data.id]: action.payload.data };
    case FETCH_USERS:
      return _.mapKeys(action.payload.data, 'id');
  }

  return state;
}
谁能告诉我我做错了什么,只要我明白我的有效载荷似乎没有被定义。但我在行动文件中找到了有效载荷。任何帮助都将不胜感激

试试看:

import axios from 'axios';
import { FETCH_USERS, FETCH_USER } from './types';

const BASE_URL = "http://api_address/member-search"
export function fetchUsers(id,first_name, last_name, dob) {
  const request = axios.post(${BASE_URL}?patientId=${id}&firstName=${first_name}&lastName=${last_name}&dateOfBirth=${dob}&length=10).then(function (response){
  // put this inside the "})" 
  return {
    type: FETCH_USERS,
    payload: request
  };
  });
}

我相信修复语法错误会有所帮助。否则,函数将在响应返回之前返回,
请求
将未定义。

如果删除函数,则错误消失。我认为我的错误在于我是如何接收数据的。我想我得把它格式化。就像在ajax中一样,执行
var jsonResponse=JSON.stringify(数据);var response=JSON.parse(jsonResponse)
这里有什么方法可以这样做吗?如果你没有从
返回任何东西,那么
,你基本上是在吞咽
响应
。它将使用
。然后(response=>{return response;})
。是的!谢谢你的回答,你是正确的。如果我删除了函数,我没有工作。那么错误就会消失。你可以打印响应并将一部分粘贴到这里吗?对象{data:Object,status:200,statusText:“OK”,headers:Object,config:Object…}config:Object数据:Object hasMoreResults:true searchResults:Array(10)proto:objectheaders:objectrequest:XMLHttpRequest状态:200 statusText:“OK”proto:Object响应