Итак, в функции наблюдателя для $route
, как узнать, какой из 2 вышеописанных сценариев произошел?
Вы не можете.Наблюдатель будет выполняться всякий раз, когда наблюдаемое значение изменяется каким-либо образом, вы не будете знать, что вызвало изменение значения в обратном вызове.
Если вы хотите знать, когда изменяется маршрут из-за того, что пользователь нажимает назад /Нажмите кнопку браузера вперед, вам нужно добавить прослушиватель событий для события popstate
.
Проблема в том, что если произошел сценарий 1, я хочу вручную обновитьсформировать снова.Если произошел сценарий 2, форма уже была обновлена, поэтому я не хочу снова обновлять форму вручную.
Не вижу проблемы с обновлением формы на любое изменение данных в параметрах URL / запрос;Вы можете проверить, совпадают ли данные URL с данными формы, и пропустить обновление.