我使用了redux,但未能做到使用時刻將我的UTC日期轉換爲適當格式的映射。規範化減速器中的響應得到類型錯誤
const adsReducer = (state = initalState, action) => {
switch (action.type) {
case 'FETCH_ADS_PENDING':
return { ...state, loading: true }
case 'FETCH_ADS_FULFILLED':
return {
...state,
loading: false,
data: ((action.payload || {}).data || {}).map(o => ({...o, created_at: moment(o.created_at).format('DD-MM-YYYY')})),
}
}
}
如果我只是返回action.payload.data那麼這將是很好,但我想解析日期爲正確的格式,上面的代碼會導致這樣的
Uncaught (in promise) TypeError: ((action.payload || (intermediate value)).data || (intermediate value)).map is not a function
任何線索錯誤怎麼了?
我使用'(action.payload || {})'和使用'&&'不一樣嗎?在這種情況下, –
應該是'((action.payload || {})。data || [])' –