API呼び出しから返された結果に1つの配列項目が戻ってきています。ReactJS、Redux:私の状態でアイテムの配列を返すには?
これはアクションの機能です。
followCheckList:function(userId){
for(var i= 0; i < userId.length;i++){
return{
types: [C.FOLLOW_CHECK_LIST, C.FOLLOW_CHECK_LIST_SUCCESS, C.FOLLOW_CHECK_LIST_FAIL],
promise: (client)=> client.get(`/graph/me/follows/${userId[i]}`)
.then(result => {
return result.id;
})
}
}
}
マイ減速
case C.FOLLOW_CHECK_LIST:
return{
...state,
follow_check_list:null,
error:false,
};
case C.FOLLOW_CHECK_LIST_SUCCESS:
return{
...state,
//break here
error:false,
follow_check_list: action.result
};
case C.FOLLOW_CHECK_LIST_FAIL:
return{
...state,
follow_check_list:false,
error:action.error,
};
default: return state || {loading: false,
loaded: null,
list_loaded: null};
}
私は私の状態で、私は
follow_check_list : Array[2].
0: item1,
1: item2
が表示されるはずですfollow_check_list : action.result
から2件の結果を期待していしかし、その代わりに、私は以下を参照してください
follow_check_list : Array[1].
0: item1,
更新 私のコンポーネント。 arrayIdsには2つの項目があります。機能の実行は、あなただけを取得する理由でなければならない最初の反復、上停止します。あなたのfollowCheckList機能はループ「のために」の「リターン」の文を持っているように見え事前みんな
"followers_checklist"はどこから来たはずですか? – markerikson
その内部の機能。定義されていない場合、私はそれを作成します。私は、関数が2回以上呼び出されたときに、変数が2回目のインスタンス化を行わないようにするためにこれを行いました – joejoeso
そして、AJAXコールバックの "結果"はどうですか?それは単一のオブジェクトですか?あなたがやっていることは、一つのオブジェクトを配列に押し込んでいるからです... – markerikson