'push' does not work without showing any error
<p>What I want is to change the route when user clicks a button.</p>

<p>The code is very similar to <a href="https://github.com/reactjs/redux/tree/master/examples/real-world" rel="nofollow">real-world</a> sample and all the steps introduced in <a href="https://github.com/reactjs/react-router-redux" rel="nofollow">react-router-redux</a> are followed.</p>

<p><strong>reducer/index.js</strong>:</p>

<pre><code>import { combineReducers } from 'redux'
import { routerReducer as routing } from 'react-router-redux'
import entities from './entities'


const rootReducer = combineReducers({
  entities,
  routing
})

export default rootReducer
</code></pre>

<p><strong>index.js</strong>:</p>

<pre><code>import 'babel-polyfill'
import React from 'react'
import { render } from 'react-dom'
import browserHistory from 'react-router/lib/browserHistory'
import syncHistoryWithStore from 'react-router-redux/lib/sync'
import Root from './src/web/containers/Root'
import configureStore from './src/store/configureStore'

const store = configureStore()
const history = syncHistoryWithStore(browserHistory, store)

render(
  &lt;Root store={store} history={history} /&gt;,
  document.getElementById('root')
)
</code></pre>

<p><strong>Root.js</strong>:</p>

<pre><code>import React, { Component, PropTypes } from 'react'
import { Provider } from 'react-redux'
import routes from '../routes'
import Router from 'react-router/lib/Router'

export default class Root extends Component {
  render() {
    const { store, history } = this.props
    return (
      &lt;Provider store={store}&gt;
        &lt;div&gt;
          &lt;Router history={history} routes={routes} /&gt;
        &lt;/div&gt;
      &lt;/Provider&gt;
    )
  }
}

Root.propTypes = {
  store: PropTypes.object.isRequired,
  history: PropTypes.object.isRequired
}
</code></pre>

<p><strong>routes.js</strong>:</p>

<pre><code>import React from 'react'
import Route from 'react-router/lib/Route'
import App from './containers/App'

export default (
  &lt;Route path="" component={App}&gt;
    {/* Other routes */}
  &lt;/Route&gt;
)
</code></pre>

<p><strong>configureStore.js</strong>:</p>

<pre><code>import { createStore, applyMiddleware, compose } from 'redux'
import thunk from 'redux-thunk'
import rootReducer from '../reducers'
import { apiMiddleware } from 'redux-api-middleware';
import {routerMiddleware, routerReducer} from 'react-router-redux'
import browserHistory from 'react-router/lib/browserHistory'

const createStoreWithMiddleware = applyMiddleware(apiMiddleware)    (createStore);


export default function configureStore(preloadedState) {
  const store = createStore(
    rootReducer,
    preloadedState,
    compose(
      applyMiddleware(
        apiMiddleware,
        routerMiddleware(browserHistory),
        thunk,
      ),
    )
  )

  return store
}
</code></pre>

<p>Then I want to use <code>push</code> in a page like this:</p>

<pre><code>import { push } from 'react-router-redux'
class Test extends Component {
  render() {
    return (
      &lt;button onClick={()=&gt;push('/path')}&gt;Test&lt;/button&gt;
    )
  }
}
</code></pre>

<p>But Nothing happens, without showing error. </p>