From 96af04433c94f593ba27f7bf7d9e809a56876016 Mon Sep 17 00:00:00 2001 From: Pig Fang Date: Sun, 12 Aug 2018 17:33:30 +0800 Subject: [PATCH] Support retrieving route params --- resources/assets/src/index.js | 19 ++++++++++++------- resources/assets/src/shims.d.ts | 2 ++ 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/resources/assets/src/index.js b/resources/assets/src/index.js index 273d5382..d57fd48d 100644 --- a/resources/assets/src/index.js +++ b/resources/assets/src/index.js @@ -12,10 +12,15 @@ if (process.env.NODE_ENV === 'development') { setTimeout(langs.find(({ lang }) => lang === blessing.locale).load, 0); } -const route = routes.find(route => route.path === blessing.route); -if (route) { - new Vue({ - el: route.el, - render: h => h(route.component) - }); -} +(() => { + const route = routes.find( + route => (new RegExp(`^${route.path}$`, 'i')).test(blessing.route) + ); + if (route) { + Vue.prototype.$route = (new RegExp(`^${route.path}$`, 'i')).exec(blessing.route); + new Vue({ + el: route.el, + render: h => h(route.component) + }); + } +})(); diff --git a/resources/assets/src/shims.d.ts b/resources/assets/src/shims.d.ts index 59834abf..fa3cd045 100644 --- a/resources/assets/src/shims.d.ts +++ b/resources/assets/src/shims.d.ts @@ -23,5 +23,7 @@ declare module 'vue/types/vue' { post(url: string, data?: object): { errno?: number, msg?: string } } + + $route: string[] } }