Реагирующий компонент навигации props.history.push ('path') не работает без forceRefresh: true - PullRequest
0 голосов
/ 20 июня 2019

Я реализовал навигацию, используя компонент истории, но кажется, что он не работает.

Вот пример:

import React from 'react';
import ReactDOM from 'react-dom';
import 'babel-polyfill';

import { Provider } from 'react-redux';
import { Router } from 'react-router-dom';

//Styles
import 'styles/index.scss';
import { getInitialCredentials } from 'actions/session';
import initStore from './store';

import Application from './pages';
import history from './history';

const { store } = initStore();

store.dispatch(getInitialCredentials());

ReactDOM.render(
  <Provider store={store}>
    <Router history={history}>
      <Application />
    </Router>
  </Provider>,
  document.getElementById('root'),
);

вот мой history.js

import { createBrowserHistory } from 'history';

export default createBrowserHistory({
  forceRefresh: true,
});

вот мой пользовательский компонент:

import React from 'react';

const Organizations = props => {
  const _addOrg = () => {
    props.history.push('/organizations/new');
    //window.location.reload();
  };

  return (
    <section>
      <h1>Organizations</h1>
      <a onClick={_addOrg}>Add organization</a>
    </section>
  );
};

export default Organizations;

Я даже не смог сделать работу props.history.push('/path'), но потом я нашел дополнительный параметр для createBrowserHistory, который называется forceRefresh: true.Я добавил его и props.history.push('/path') начал работать, но props.history.goBack все еще не работает.

Кто знает, почему это может произойти?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...