2017-10-21 43 views
0

私はちょうどredux.Iを始めると、APIからいくつかのGIFを取得しようとしています。
私の目標は、応答データ全体の代わりにimg urlの配列を返すことです。各画像を繰り返して返すと、状態はnullのままです。return action.payload.data.data;を使用すると応答が返されますが、 img URLを取得する。
対応する還元剤は以下のとおりです。Redux Reducer - 状態

import _ from 'lodash'; 
export default function(state = null,action) { 
    switch(action.type) { 
    case 'FETCH_GIF': 
    _.forOwn(action.payload.data.data, function(value, key) { 
     var img = value.images.downsized.url; 
     return img; 
    }); 
     // return action.payload.data.data; 
     default: 
     return state; 
    } 
} 

答えて

0

state = nullは少し間違っているように見えますが、通常は何らかの初期状態のinitialStateオブジェクトになります。あなたのケースブロックで、_.forOwnが返すものが本当に明確ではありません。 action.data.dataを突き詰めようとしていますか?もしそうなら、それが実際に起こっているかどうかを確認してください。また、減速機によって返されるあなたの状態はオブジェクトでなければなりません、私はあなたが配列を返すときreduxが動作するとは思わない。

+0

まず、私はタイプミスをしました。 action.data.dataは実際にはオブジェクトの配列を返すaction.payload.data.dataです。各オブジェクトはgifに関連しています。しかし、私の目的は配列やオブジェクトを返すためですそれは、gifのURLです。 – sterg

関連する問題