我试图映射数组对象?
我试图把它映射过来。
<ul>{categories.map(cat => <li key={cat.name}>{cat.name}</li>)}</ul>
但收到一个错误,它不是一个功能。我想这是因为它的数组和地图对象只处理纯数组?但我不确定如何使用它。
或者我可以直接从我的动作/缩减器返回不同类型的对象,我正在使用redux-thunk
和axios
const headers = {
Accept: 'application/json',
'Content-Type': 'application/json',
Authorization: 'jfaiwnfwvin',
}
export const fetchCategories = () => {
return axios.get(`${API_URL}/categories`, { headers })
}
export function getCategories() {
const request = API.fetchCategories()
return dispatch => {
request.then(({ data }) => {
dispatch({ type: CATEGORIES_GET_CATEGORIES, payload: data })
})
}
}
const categories = (state = [], action) => {
switch (action.type) {
case CATEGORIES_GET_CATEGORIES:
return action.payload
default:
return state
}
}
export default connect(state => ({ categories: state.categories }), {
getCategories,
})(Category)
答案 0 :(得分:1)
从获得响应的那一刻起,您可以随时选择类别数组并将其传递,
我建议在收到数据对象后立即执行此操作
但您也可以在reducer阶段或直接在组件中完成。