Программная навигация при использовании HashRouter

Я использую HashRouter для своих маршрутов в приложении response.js. Затем у меня есть функция, которая делает следующее:

this.props.history.push('/somePath');

Проблема в том, что с тех пор, как я начал использовать HashRouter, страница не отправляется по этому пути при вызове этой функции.

Я зарегистрировал this.props.history, и push был там.

Как я могу программно перемещаться при использовании HashRouter?

Примечание: я использовал withRouter

Вот код:

import React, { Component } from 'react';
import { HashRouter, Route, Switch, Redirect, withRouter } from 'react-router-dom';
// Other imports

class App extends Component {
    navigate = () => {
        this.props.history.push('/route1');
        console.info(this.props.history);
    };

    render() {    
        return (
            <div className = "App">
                <Header />

                <HashRouter>
                    <Switch>
                        <Route
                            path = "/route1"
                            exact
                            render = {() => (
                                <FirstRoute someSetting='setting1'/>
                            )}
                        />
                        <Route
                            path = "/route2"
                            exact
                            render = {() => (
                                <SecondRoute anotherSetting='Really Cool'/>
                            )}
                        />
                        <Route path = "/404" component = {NotFound} />
                        <Route exact path = "/" render = {() => <HomePage someSettings='Home Page' />} />
                        <Redirect to = "/404" />
                    </Switch>
                </HashRouter>

                <BottomBar />
            </div>
        );
    }
}

export default withRouter(App);

Можете поделиться кодом компонента, в котором вы пытались реализовать навигацию?

Laurens Deprost 02.01.2019 00:11

@LaurensDeprost Извините за это ... Только что обновил

Jessica 02.01.2019 02:08

@Jessica, когда вызывается функция navigate? в какой части кода вызывается?

Juorder Gonzalez 02.01.2019 04:36

@JohuderGonzalez Он вызывается из другого файла.

Jessica 02.01.2019 05:45

@Jessica Ты никогда не передаешь navigate в качестве опоры для чего-либо. Можете ли вы также предоставить код в другом файле, который его вызывает?

Drew Reese 02.01.2019 07:05

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

Juorder Gonzalez 02.01.2019 13:35

возможный дубликат React-router v4 this.props.history.push (…) не работает, см. мой ответ там

arcol 02.01.2019 23:15
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
7
790
0

Другие вопросы по теме