28 lines
767 B
Vue
28 lines
767 B
Vue
<template>
|
|
<div v-if="data">
|
|
<MainPoll :question-component="QuestionResult" :results="data" />
|
|
</div>
|
|
<div v-else>
|
|
Couldn't fetch poll results ! Please contact the website administrator
|
|
</div>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import QuestionResult from '~/components/QuestionResult.vue';
|
|
|
|
const runtimeConfig = useRuntimeConfig()
|
|
|
|
const route = useRoute()
|
|
|
|
const { data, error } = await useFetch<{ [question_id: string]: { [values: string]: number } }>(`${runtimeConfig.public.apiBase}/results/${route.query.code}`, {
|
|
})
|
|
|
|
if (error && error.value) {
|
|
throw createError({
|
|
statusCode: error.value.statusCode,
|
|
statusMessage: error.value.statusMessage,
|
|
message: error.value.data.message
|
|
});
|
|
}
|
|
</script>
|