English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Sintomo
Quando si carica il primo componente (qui il primo significa il primo nella cronologia del browser, chiamato componente da monitorare), saltare a altre pagine può attivare l'evento beforeRouteLeave. Ma non si può monitorare l'evento quando si preme il pulsante indietro del browser
Soluzione
Al momento si utilizza una soluzione piuttosto rustica e non pratica. Aggiungere un livello di componente, poi router.push al componente da monitorare, in modo che il componente da monitorare non sia il primo componente, può monitorare normalmente l'evento beforeRouteLeave
Punti di attenzione:
Poiché è stato disturbato il percorso originale, è necessario aggiungere una sorveglianza di percorso globale in main.js
router.beforeEach((to, from, next) => { if (to è 'componente per il salto' && from è 'componente da monitorare') { router.go(-1) next(false) } else { next() } // Così quando si entra nel componente da monitorare da una pagina normale A, quando si preme il pulsante indietro nel componente da monitorare si può entrare in A normalmente )
Sommario
Come risolvere il problema di non essere in grado di attivare l'evento beforeRouteLeave quando si usa il pulsante indietro del browser per Vue - Spero che questo aiuti!