React browserhistory.push не работает в первый раз - PullRequest
0 голосов
/ 18 сентября 2018

Я загружаю страницу с параметром url и затем сбрасываю на корневой URL с помощью browserhistroy.push (), в первый раз, когда он не работает, и когда я вижу логи, props.param показывает то же старое имя URL-адреса. Второй раз, когда я снова нажал, он работает, как ожидалось. Примечание: использование React с redux, использование «response-router». Код: route.js

{
      path: '/:menuitem',
      name: 'Products',
      getComponent(nextState, cb) {
        const importModules = Promise.all([
          import('views/Products/modules/reducer'),
          import('views/Products/modules/sagas'),
          import('views/Products'),
        ]);

        const renderRoute = loadModule(cb);

        importModules.then(([reducer, sagas, component]) => {
          injectReducer('search', reducer.default);
          injectSagas(sagas.default);
          renderRoute(component);
        });
        importModules.catch(errorLoading);
      },
    },

В компоненте: настройка параметра / URL

 var urlname = options[secIndex][itemIndex].name;
      urlname = urlname.replace(/\s+/g, '-').toLowerCase();
      console.log(urlname);
      browserHistory.push('/'+urlname);
      this.props.leftStripActions.onFilterByLens(options[secIndex][itemIndex]);

Сброс в root: browserHistory.push ( '/'); [Это не работает в первый раз enter code here]

Любая помощь будет принята с благодарностью !!!

1 Ответ

0 голосов
/ 18 сентября 2018
use => this.props.history.push(url)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...