С vue-router 3 можно было добавить метод на router-link
с @click.native="myMethod"
, как описано здесь.
В vue 3 модификатор .native
устарел а>.
Когда пользователь нажимает на <router-link to="somewhere" @click="myMethod">Click me</router-link>
, возникает ошибка, при которой перезагружается все приложение.
С vue-router 4, как правильно запустить метод при нажатии на тег router-link
?
<a>
тега<router-link>
, помещая туда свой собственный обработчик @click. Тот, кто работал над<router-link>
, знал, что ваша проблема возникнет: github.com/vuejs/vue-router-next/blob/ Я пытался сделать что-то вроде<router-link v-slot="{ navigate }" @click="() => { myMethod(); navigate;}
, но вы не можете сразу использовать область слота для элемента, из которого вы его вытащили - person 3nuc   schedule 03.04.2021