From: Eduardo San Martin Morote Date: Mon, 6 May 2019 19:24:59 +0000 (+0200) Subject: fix: call beforeRouteLeave in right order X-Git-Tag: v4.0.0-alpha.0~374 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=23f0c306b2449a087bce91cfd6811c5b2cda1e3c;p=thirdparty%2Fvuejs%2Frouter.git fix: call beforeRouteLeave in right order --- diff --git a/__tests__/guards/component-beforeRouteLeave.spec.js b/__tests__/guards/component-beforeRouteLeave.spec.js index 5c7697eb..463899a9 100644 --- a/__tests__/guards/component-beforeRouteLeave.spec.js +++ b/__tests__/guards/component-beforeRouteLeave.spec.js @@ -150,7 +150,7 @@ describe('beforeRouteLeave', () => { ) }) - it.skip('calls beforeRouteLeave guard on navigation between children in order', async () => { + it('calls beforeRouteLeave guard on navigation between children in order', async () => { const router = createRouter({ routes }) await router.push({ name: 'nested-nested-foo' }) resetMocks() diff --git a/src/router.ts b/src/router.ts index 669a99e5..e41f6c13 100644 --- a/src/router.ts +++ b/src/router.ts @@ -169,7 +169,7 @@ export class Router { // TODO: is it okay to resolve all matched component or should we do it in order guards = await extractComponentsGuards( - from.matched.filter(record => to.matched.indexOf(record) < 0), + from.matched.filter(record => to.matched.indexOf(record) < 0).reverse(), 'beforeRouteLeave', to, from