Если вы хотите сохранить полное местоположение и изменить некоторые параметры, если вы находитесь во вложенном маршруте, вы можете сделать это с помощью pathToRegexp, url и path из match и pathname из location.
const ParamLink = ({
children,
match: { url = '', path = '', params: currentParams = {} } = {},
location: { pathname = '' } = {},
params = {}
}) => {
const urlPartToInsert = pathToRegexp.compile(path)({
...currentParams,
...params
});
const to = pathname.replace(url, urlPartToInsert);
return <Link to={to}>{children}</Link>;
};
export default ParamLink;