отреагировать на строку запроса маршрутизатора множеством параметров - PullRequest
0 голосов
/ 03 мая 2019

У меня есть строка запроса, которая выглядит следующим образом:

https://localhost:44399/historicalcomp?foo=4.047&bar=0.7982237280435869&baz=19.17%25

Мой маршрут выглядит следующим образом:

  <Switch>
    // ... many more routes here...
    <Route
      path={`${path}/historicalcomp/:foo/:bar/:baz`}
      component={() => <HistoricalComparison rightDrawer="rating" applicationId={match.params.id} />}
    />
    <Route render={({ match }) => <Redirect to={`${path.replace(":id", match.params.id)}/summary`} />} />
  </Switch>

Вместо отправки мне наПо маршруту Historical я получаю сводный маршрут по умолчанию ...

Когда я удаляю параметры из Маршрута и строки запроса, я могу попасть по маршруту historicalcomp таким образом.Но мне нужна строка запроса.

Вот как я определяю ссылку в другом компоненте:

const getQueryString = () => {
  return new URLSearchParams({
    foo: props.foo,
    bar: props.bar,
    baz: props.baz
  }).toString();
};

Я возвращаюсь с этим:

     <Link
        to={{
          pathname: "historicalcomp",
          search: getQueryString()
        }}
      >
        (view historicals)
      </Link>
...