const queryData = ref<RouterInput['users']['listUsers']>({
orderBy: 'email',
order: 'asc',
limit: 10,
filters: {
email: '',
first_name: '',
last_name: '',
},
})
const { data: users, refresh, pending, error } = await useLazyAsyncData(() => {
console.log('refresh')
const query = {
...queryData.value,
filters: mapValues(queryData.value.filters, value => value || undefined),
}
return trpc.users.listUsers.query(query)
})
watchDebounced(queryData, async () => {
console.log('refreshWatch')
await refresh()
}, {
debounce: 500,
deep: true,
})
const queryData = ref<RouterInput['users']['listUsers']>({
orderBy: 'email',
order: 'asc',
limit: 10,
filters: {
email: '',
first_name: '',
last_name: '',
},
})
const { data: users, refresh, pending, error } = await useLazyAsyncData(() => {
console.log('refresh')
const query = {
...queryData.value,
filters: mapValues(queryData.value.filters, value => value || undefined),
}
return trpc.users.listUsers.query(query)
})
watchDebounced(queryData, async () => {
console.log('refreshWatch')
await refresh()
}, {
debounce: 500,
deep: true,
})