У меня есть кнопка, которая вызывает изменение маршрута в моем приложении Vue. Я хочу, чтобы элемент кнопки был доступен в объекте $route компонента в качестве «цели события» изменения маршрута (аналогично тому, как есть event.target в событии клика).
Это возможно?
Если нет, то как лучше всего узнать причину изменения маршрута?
Вы ищете Навигационная охрана. Есть
Вы можете получить конкретную кнопку, которая вызвала изменение маршрута в вашем компоненте внутри In-Component Guard beforeRouteLeave(to, from)
. Этот конкретный охранник имеет доступ к this
компонента, который имеет все реквизиты и реактивное состояние (включая ссылку на кнопку).
beforeRouteLeave
охранников в деактивированных компонентах.beforeEach
охраны.beforeRouteUpdate
охранников в повторно используемых компонентах.beforeEnter
в конфигурации маршрута.beforeRouteEnter
в активированных компонентах.beforeResolve
охраны.afterEach
хуки.beforeRouteEnter
охранникам с инстанцированными экземплярами.