From 2ed7ad87d3036953d75a256c35516896349b6269 Mon Sep 17 00:00:00 2001 From: Kim Joar Bekkelund Date: Wed, 9 Dec 2015 10:52:49 +0100 Subject: [PATCH] Remove INIT_PATH --- src/index.js | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/src/index.js b/src/index.js index 495ec76..538a19d 100644 --- a/src/index.js +++ b/src/index.js @@ -2,24 +2,11 @@ const deepEqual = require('deep-equal') // Constants -const INIT_PATH = '@@router/INIT_PATH' -const UPDATE_PATH = '@@router/UPDATE_PATH' -const SELECT_STATE = state => state.routing +const UPDATE_PATH = "@@router/UPDATE_PATH"; +const SELECT_STATE = state => state.routing; // Action creators -function initPath(path, state) { - return { - type: INIT_PATH, - payload: { - path: path, - state: state, - replace: false, - avoidRouterUpdate: true - } - } -} - function pushPath(path, state, { avoidRouterUpdate = false } = {}) { return { type: UPDATE_PATH, @@ -54,7 +41,7 @@ let initialState = { } function update(state=initialState, { type, payload }) { - if(type === INIT_PATH || type === UPDATE_PATH) { + if(type === UPDATE_PATH) { return Object.assign({}, state, { path: payload.path, changeId: state.changeId + (payload.avoidRouterUpdate ? 0 : 1), @@ -128,7 +115,8 @@ function syncReduxAndRouter(history, store, selectRouterState = SELECT_STATE) { // trigger an unnecessary `pushState` on load lastRoute = initialState - store.dispatch(initPath(route.path, route.state)) + const method = location.action === 'REPLACE' ? replacePath : pushPath; + store.dispatch(method(route.path, route.state, { avoidRouterUpdate: true })); } else if(!locationsAreEqual(getRouterState(), route)) { // The above check avoids dispatching an action if the store is // already up-to-date