React Native使用2个json文件并使用单个地图进行渲染

时间:2019-05-30 13:07:53

标签: react-native react-redux

我正在使用redux从我的在线api保存json文件,并使用map以堆栈格式显示它。现在我想为从redux接收到的json中的每篇文章添加视图,优先级和收藏夹,并根据每次查看卡片时更改的优先级。

我不知道如何将最初包含0个视图等的第二个json文件映射到接收的数据

我还需要一种方法,如果添加了新数据并且刷新了redux,新数据也将映射到视图优先级和收藏夹字段

我只需要一个指向我应该使用的东西的指针

编辑1

这是我的救赎

export const apiMiddleware = store => next => action => {
// Pass all actions through by default
next(action);
switch (action.type) {
 // In case we receive an action to send an API request
 case 'GET_DATA':
   // Dispatch GET_DATA_LOADING to update loading state
   store.dispatch({type: 'GET_DATA_LOADING'});
   // Make API call and dispatch appropriate actions when done
   fetch(`https://news119.herokuapp.com/getData`)
     .then(response => response.json())
     .then(data => next({
       type: 'GET_DATA_RECEIVED',
       data
     }))
     .catch(error => next({
       type: 'GET_DATA_ERROR',
       error
     }));
   break;
 // Do nothing if the action does not interest us
 default:
   break;
}
};
export const reducer = (state = { movies: [], loading: true }, action) => {
  switch (action.type) {
    case 'GET_DATA_LOADING':
      return {
        ...state,                   // keep the existing state,
        loading: true,              // but change loading to true
      };
    case 'GET_DATA_RECEIVED':
      return {
        loading: false,             // set loading to false
        data: action.data.data, // update data array with reponse data
      };
    case 'GET_DATA_ERROR':
      return state;
    default:
      return state;
    }
};

这就是我的映射方式

    return this.state.dataSource.map((item,i)=>{

整个地图功能确实很大,但这就是我目前正在映射的方式

0 个答案:

没有答案