我目前的功能如下:
import axios from 'axios';
export const GET_LOCATIONS = 'GET_LOCATIONS';
export function fetchLocals() {
const request = axios.get('http://localhost:3001/api')
.then(function(response) {
console.log(response.data)
})
.catch(function (error) {
console.log(error);
});
return {
type: GET_LOCATIONS,
payload: request
};
}
我希望能够获得response.data
之外的内容,以便我可以访问其信息并发布它们!
答案 0 :(得分:0)
只需从response.data
句柄返回.then
,就可以了:
export function fetchLocals() {
const request = axios.get('http://localhost:3001/api')
.then(function(response) {
console.log(response.data);
return response.data;
})
.catch(function (error) {
console.log(error);
return Promise.reject(error);
});
return {
type: GET_LOCATIONS,
payload: request
};
}
现在您可以像这样调用函数:
fetchLocals().payload
.then(data => {
// `data` will be `response.data` here
});
请注意,Promise.reject
句柄中需要catch
调用,以便后续处理程序识别被拒绝的承诺。