stream-saga/src/reducers/index.js

49 lines
1.2 KiB
JavaScript
Raw Normal View History

2019-06-19 16:37:03 -04:00
import { ADD_ARTICLE } from '../constants/action-types'
2019-06-21 00:59:25 -04:00
import { SET_CANDIDATE } from '../constants/action-types'
2019-06-21 11:51:07 -04:00
import { DATA_LOADED } from '../constants/action-types'
import { DATA_LOADED_TO_ADD } from '../constants/action-types'
2019-06-19 14:24:21 -04:00
const initialState = {
2019-06-19 17:08:53 -04:00
articles: [],
2019-06-21 00:59:25 -04:00
remoteArticles: [],
candidate: ''
2019-06-19 14:24:21 -04:00
}
function rootReducer(state = initialState, action) {
if (action.type === ADD_ARTICLE) {
return Object.assign({}, state, {
articles: state.articles.concat(action.payload)
})
}
2019-06-21 00:59:25 -04:00
else if (action.type === SET_CANDIDATE) {
return Object.assign({}, state, {
candidate: action.payload
})
}
2019-06-21 11:51:07 -04:00
else if (action.type === DATA_LOADED) {
2019-06-22 19:57:06 -04:00
console.log('Payload: ' + action.payload)
2019-06-21 11:51:07 -04:00
return Object.assign({}, state, {
remoteArticles: action.payload.message.statuses
})
}
else if (action.type === DATA_LOADED_TO_ADD) {
2019-06-22 19:57:06 -04:00
console.log('Payload: ' + action.payload)
return Object.assign({}, state, {
remoteArticles: state.remoteArticles.concat(action.payload)
})
}
else if (action.type === "DATA_LOADED_TO_ADD_2") {
2019-06-19 17:08:53 -04:00
return Object.assign({}, state, {
2019-06-21 00:06:42 -04:00
remoteArticles: state.remoteArticles.concat(action.payload.message.statuses)
2019-06-19 17:08:53 -04:00
})
}
2019-06-19 14:24:21 -04:00
return state
}
export default rootReducer