我正在使用react和redux构建我的第一个应用程序,由于某种原因,在异步操作上收到的数据结构在IOS(safari)上表现不同。
此操作进行提取(交叉提取)请求:
export function fetchTransactions() {
return (dispatch) => {
dispatch(requestTransactions());
return fetch('/getTransactions', {
method: 'GET',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
Cache: 'no-cache',
},
credentials: 'same-origin',
})
.then(
response => response.json(),
error => console.log('An error occurred.', error),
)
.then(json => dispatch(receiveTransactions(json.dados)));
};
}
接收行动是:
export const RECEIVE_TRANSACTIONS = 'RECEIVE_TRANSACTIONS';
export function receiveTransactions(data) {
return {
type: RECEIVE_TRANSACTIONS,
data,
};
}
减速
case 'REQUEST_TRANSACTIONS':
return Object.assign({}, {...state}, {isFetching: true});
case 'RECEIVE_TRANSACTIONS':
return Object.assign({}, {...state}, {data: action.data}, {isFetching: false});
它按预期工作,事务数据存在于名为data的数组中。
如您所见,重复字段和其他字段。此行为导致应用程序无法正常工作。有任何想法吗?非常感谢,对不起英文事情感到抱歉。
@edit -------------------------------------------
在其他模拟器上运行应用程序会导致状态良好,但数据不会显示在表格中,如下所示:
正如您所看到的,数组中有100个数据对象,表中没有任何内容,这在firefox或chrome上没有发生。