Я работаю над приложением для тестирования событий, где я использую реагирующий маршрутизатор для направления пользователей на отдельные страницы. У меня есть страница формы, которая разделяет два URL-адреса в зависимости от взаимодействия пользователя с формой. У пользователя есть возможность создать событие или обновить событие. при создании события используется путь / createEvent , а при обновлении события используется путь / manage /: id , где идентификатор получен из объекта истории. Допустим, пользователь хочет обновить событие, а затем вдруг решает создать новое. Информация, подлежащая обновлению, уже заполняется в форме, поэтому, когда пользователь нажимает кнопку создать событие и перенаправляется с / manage: id на / createEvent страница не будет повторно отображаться и заполнять новую форму, чтобы исправить это, я решил обернуть Route with Switch и предоставить ему свойство key, поскольку каждый раз, когда пользователь нажимает кнопку create event изменяется и страница должна перерисовываться с чистой формой, но этого не происходит, хотя путь в URL меняется с / manage /: id на / createEvent
вот фрагмент кода для этого:
<Switch key={this.props.location.key}>
<Route
path={["/createEvent", "/manage/:id"]}
component={EventForm}
/>
</Switch>