UNPKG

@morehook/router

Version:
33 lines (29 loc) 704 B
'use strict'; var vueDemi = require('vue-demi'); var vueRouter = require('vue-router'); function useRouteQuery(key) { const route = vueRouter.useRoute(); const router = vueRouter.useRouter(); if (!route || !router) return vueDemi.ref(""); if (key) { return vueDemi.computed({ get: () => { return route.query[key]; }, set: (val) => { router.replace({ query: { ...route.query, [key]: val } }); } }); } else { return vueDemi.computed({ get: () => { return route.query; }, set: (val) => { router.replace({ query: { ...route.query, ...val } }); } }); } } exports.useRouteQuery = useRouteQuery;