Dev cleaning (#106)
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
import { computed } from 'vue'
|
||||
import { useRoute, useRouter } from 'vue-router'
|
||||
|
||||
export function useQueryMode(key: string = 'mode') {
|
||||
const route = useRoute()
|
||||
const router = useRouter()
|
||||
|
||||
const mode = computed<'list' | 'add'>({
|
||||
get: () => (route.query[key] && route.query[key] === 'add' ? 'add' : 'list'),
|
||||
set: (val) => {
|
||||
router.replace({
|
||||
path: route.path,
|
||||
query: {
|
||||
...route.query,
|
||||
[key]: val === 'list' ? undefined : val,
|
||||
},
|
||||
})
|
||||
},
|
||||
})
|
||||
|
||||
const openForm = () => (mode.value = 'add')
|
||||
const backToList = () => (mode.value = 'list')
|
||||
|
||||
return { mode, openForm, backToList }
|
||||
}
|
||||
Reference in New Issue
Block a user