我正在使用redux承诺开发天气应用程序,并且无法检索action.payLoad.data.
actions/index.js
import axios from 'axios';
const API_KEY = 'xxxxxxxxx';
const ROOT_URL = `http://api.openweathermap.org/data/2.5/forecast?appid=${API_KEY}`;
export const FETCH_WEATHER = 'FETCH_WEATHER';
export function fetchWeather(city) {
const url = `${ROOT_URL}&q=${city},us`;
const request = axios.get(url);
//console.log("request:", request);
return {
type: FETCH_WEATHER,
payLoad: request
};
}Run Code Online (Sandbox Code Playgroud)
reducers/reducer_weather.js
import { FETCH_WEATHER } from '../actions/index';
export default function(state = [], action) {
if (action.type === FETCH_WEATHER) {
console.log('Action.payLoad.data received:', action.payLoad.data);
console.log('Action received:', action);
}
switch (action.type) {
case FETCH_WEATHER:
return [ action.payLoad.data, ...state ]; // …Run Code Online (Sandbox Code Playgroud)