refactor:create fetchOption

This commit is contained in:
Thanaphon Frappet 2024-10-17 15:19:26 +07:00
parent 3a192c0d77
commit 122d9b06ca

View file

@ -1,9 +1,12 @@
import { ref } from 'vue';
import { defineStore } from 'pinia';
import { useI18n } from 'vue-i18n';
const useOptionStore = defineStore('optionStore', () => {
const globalOption = ref();
const { locale } = useI18n();
const globalOption = ref();
const rawOption = ref();
function mapOption(value: string) {
for (const category in globalOption.value) {
if (globalOption.value.hasOwnProperty(category)) {
@ -16,9 +19,17 @@ const useOptionStore = defineStore('optionStore', () => {
return value;
}
async function fetchOption() {
const resultOption = await fetch('/option/option.json');
rawOption.value = await resultOption.json();
if (locale.value === 'eng') globalOption.value = rawOption.value.eng;
if (locale.value === 'tha') globalOption.value = rawOption.value.tha;
}
return {
globalOption,
fetchOption,
mapOption,
};
});