Как не допустить повторной визуализации маршрута реакции при изменении URL-адреса - PullRequest
0 голосов
/ 23 мая 2018

Я работаю над историей использования приложения.Все приложение перерисовывается каждый раз, когда я меняю URL, используя:

props.history.location.replace(newPath);

Такое поведение сильно влияет на производительность.То, что я хочу, это просто изменить URL-адрес, который обновляет некоторые параметры запроса, чтобы пользователь мог поделиться представлением с другим просто по URL.Интересно, есть ли способ обойти эту проблему.Спасибо за совет.

1 Ответ

0 голосов
/ 23 мая 2018

Вам нужно обернуть ваш компонент в общий компонент, в котором вы указали свой макет.Необходимо перерисовать только тело макета.

//App.js
import Layout from "../LayoutContainer/Layout"; // where i designed the application's layout
class App extends Component {
  render() {
    return (
      <Layout>
        <Router >
          <div>
            <Route path="/home" exact component={Dashboard} />
            <Route path="/product" exact component={Products} />
          </div>
        </Router>
      </Layout>
    );
  }
}

При использовании этого способа будет перерисован только контент внутри макета, если только не все приложение.

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