Я использую React Router 5.
У меня есть путь /item/:id
. Когда я перехожу по этому пути, я хочу иметь возможность загрузить страницу с хеш-идентификатором по умолчанию. i.e. /item/:id#123
Для большего контекста у меня есть список шагов на моей странице, связанных с элементом. Каждый раз, когда пользователь выбирает другой шаг, хэш изменяется соответственно следующим образом:
step 1 -> /item/123#1
step 2 -> /item/123#2
step 3 -> /item/123#3
Вот примерная реализация кода моего компонента:
import { withRouter } from 'react-router-dom'
import steps from './steps'
const ItemPage = ({ history, location }) => {
const { hash, pathname } = location
const changeURLhash = idx => {
history.push({ pathname: pathname, hash: idx.toString() })
}
return (
<ul>
{steps.map(step => (
<li key={i} onClick={changeURLhash}>
{step.title}
</li>
))}
</ul>
)
}
Я могу изменить хэшпосле выбора шага, но при начальной загрузке страницы, когда ничего не было нажато, в пути URL нет хэша. Мне нужно изменить это, потому что шаг 1 выбран по умолчанию при загрузке страницы.
Каков наилучший способ сделать это? Заранее спасибо!