implemented redux for state management
This commit is contained in:
23
src/store/reducers/index.js
Normal file
23
src/store/reducers/index.js
Normal file
@@ -0,0 +1,23 @@
|
||||
import { combineReducers } from 'redux';
|
||||
import TrendingReducer from './reducerTrending';
|
||||
import NetflixOriginalsReducer from './reducerNetflixOriginals';
|
||||
import TopRatedReducer from './reducerTopRated';
|
||||
import ActionMoviesReducer from './reducerActionMovies';
|
||||
import ComedyMoviesReducer from './reducerComedyMovies';
|
||||
import HorrorMoviesReducer from './reducerHorrorMovies';
|
||||
import RomanceMoviesReducer from './reducerRomanceMovies';
|
||||
import DocumentaryReducer from './reducerDocumentary';
|
||||
|
||||
|
||||
const rootReducer = combineReducers({
|
||||
trending: TrendingReducer,
|
||||
netflixOriginals: NetflixOriginalsReducer,
|
||||
topRated: TopRatedReducer,
|
||||
action: ActionMoviesReducer,
|
||||
comedy: ComedyMoviesReducer,
|
||||
horror: HorrorMoviesReducer,
|
||||
romance: RomanceMoviesReducer,
|
||||
documentary: DocumentaryReducer
|
||||
});
|
||||
|
||||
export default rootReducer;
|
||||
11
src/store/reducers/reducerActionMovies.js
Normal file
11
src/store/reducers/reducerActionMovies.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import { FETCH_ACTION_MOVIES } from '../actions/index';
|
||||
|
||||
export default function (state = {}, action) {
|
||||
switch (action.type) {
|
||||
case FETCH_ACTION_MOVIES:
|
||||
const data = action.payload.data.results;
|
||||
return { ...state, data }
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
11
src/store/reducers/reducerComedyMovies.js
Normal file
11
src/store/reducers/reducerComedyMovies.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import { FETCH_COMEDY_MOVIES } from '../actions/index';
|
||||
|
||||
export default function (state = {}, action) {
|
||||
switch (action.type) {
|
||||
case FETCH_COMEDY_MOVIES:
|
||||
const data = action.payload.data.results;
|
||||
return { ...state, data }
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
11
src/store/reducers/reducerDocumentary.js
Normal file
11
src/store/reducers/reducerDocumentary.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import { FETCH_DOCUMENTARIES } from '../actions/index';
|
||||
|
||||
export default function (state = {}, action) {
|
||||
switch (action.type) {
|
||||
case FETCH_DOCUMENTARIES:
|
||||
const data = action.payload.data.results;
|
||||
return { ...state, data }
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
11
src/store/reducers/reducerHorrorMovies.js
Normal file
11
src/store/reducers/reducerHorrorMovies.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import { FETCH_HORROR_MOVIES } from '../actions/index';
|
||||
|
||||
export default function (state = {}, action) {
|
||||
switch (action.type) {
|
||||
case FETCH_HORROR_MOVIES:
|
||||
const data = action.payload.data.results;
|
||||
return { ...state, data }
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
11
src/store/reducers/reducerNetflixOriginals.js
Normal file
11
src/store/reducers/reducerNetflixOriginals.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import { FETCH_NETFLIX_ORIGINALS } from '../actions/index';
|
||||
|
||||
export default function (state = {}, action) {
|
||||
switch (action.type) {
|
||||
case FETCH_NETFLIX_ORIGINALS:
|
||||
const data = action.payload.data.results;
|
||||
return { ...state, data }
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
11
src/store/reducers/reducerRomanceMovies.js
Normal file
11
src/store/reducers/reducerRomanceMovies.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import { FETCH_ROMANCE_MOVIES } from '../actions/index';
|
||||
|
||||
export default function (state = {}, action) {
|
||||
switch (action.type) {
|
||||
case FETCH_ROMANCE_MOVIES:
|
||||
const data = action.payload.data.results;
|
||||
return { ...state, data }
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
11
src/store/reducers/reducerTopRated.js
Normal file
11
src/store/reducers/reducerTopRated.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import { FETCH_TOP_RATED } from '../actions/index';
|
||||
|
||||
export default function (state = {}, action) {
|
||||
switch (action.type) {
|
||||
case FETCH_TOP_RATED:
|
||||
const data = action.payload.data.results;
|
||||
return { ...state, data }
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
11
src/store/reducers/reducerTrending.js
Normal file
11
src/store/reducers/reducerTrending.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import { FETCH_TRENDING } from '../actions/index';
|
||||
|
||||
export default function (state = {}, action) {
|
||||
switch (action.type) {
|
||||
case FETCH_TRENDING:
|
||||
const data = action.payload.data.results;
|
||||
return { ...state, data }
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user