@morehook/router
Version:
关于 vuerouter 的 hooks
33 lines (29 loc) • 704 B
JavaScript
;
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;