From cedac98b700efc6d1a38378e673626f07bff916d Mon Sep 17 00:00:00 2001 From: Jason Date: Thu, 16 Jun 2016 17:21:57 +0800 Subject: [web] promot reduce --- web/src/js/ducks/settings.js | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) (limited to 'web/src/js') diff --git a/web/src/js/ducks/settings.js b/web/src/js/ducks/settings.js index 05499da5..41e99d29 100644 --- a/web/src/js/ducks/settings.js +++ b/web/src/js/ducks/settings.js @@ -1,4 +1,5 @@ import { StoreCmds } from '../actions' +import { addLogEntry } from './eventLog' export const WS_MSG_TYPE = 'settings' export const WS_MSG_CMD_RESET = 'reset' @@ -11,20 +12,6 @@ export const RECV_WS_MSG = 'SETTINGS_RECV_WS_MSG' const defaultState = { settings: {}, pendings: null, req: null } -function reduceData(data, action) { - switch (action.cmd) { - - case WS_MSG_CMD_RESET: - return action.data || {} - - case WS_MSG_CMD_UPDATE: - return _.merge({}, data.settings, action.data) - - default: - return data - } -} - export default function reduce(state = defaultState, action) { switch (action.type) { @@ -46,6 +33,20 @@ export default function reduce(state = defaultState, action) { } } +function reduceData(data, action) { + switch (action.cmd) { + + case WS_MSG_CMD_RESET: + return action.data || {} + + case WS_MSG_CMD_UPDATE: + return _.merge({}, data.settings, action.data) + + default: + return data + } +} + export function fetch() { return dispatch => { const req = $.getJSON('/' + this.type) @@ -76,6 +77,8 @@ export function reset(data) { } export function handleFetchError(error) { - console.error(error) - return { type: FETCH_ERROR, error } + return (dispatch, getState) => { + dispatch(addLogEntry(error.stack || error.message || error)) + dispatch({ type: FETCH_ERROR, error }) + } } -- cgit v1.2.3