codecheck

Форк
0
/
challengeVariants.ts 
47 строк · 1.4 Кб
1
import { defineStore } from "pinia";
2

3
export const useChellengeVariantsStore = defineStore(
4
  "challengeVariants",
5
  () => {
6
    let challenges: any = reactive({});
7
    let langs = ref<{ id: number; name: string; status: boolean }[]>([]);
8
    let currentLang = ref("");
9
    const currentChallenge = () => {
10
      return challenges[currentLang.value];
11
    };
12
    let challenge = ref();
13
    // const currentChallenge = computed(() => {
14
    //   return challenges[currentLang.value];
15
    // });
16
    const initChallengeVariants = async (id: string) => {
17
      const { data: fetchChallenge } = await useFetch(`/api/challenges/${id}`);
18
      // const { data: fetchLangs } = await useFetch("/api/challenges/");
19
      let langss: any = [];
20
      challenge.value = fetchChallenge.value;
21
      // challenge.value.variants?.forEach((item: any) => {
22
      //   console.log(item);
23
      // });
24
      fetchChallenge.value.variants.forEach((item: any) => {
25
        // console.log(item.lang);
26
        langss.push(item.lang);
27
        challenges[item.lang.name] = {
28
          mdInstructrion: item.mdInstructrion,
29
          test: item.test,
30
          code: item.code,
31
          id: item.id,
32
        };
33
      });
34
      langs.value = langss;
35
      currentLang.value = langs.value?.[0].name as string;
36
    };
37

38
    return {
39
      currentLang,
40
      initChallengeVariants,
41
      challenges,
42
      currentChallenge,
43
      langs,
44
      challenge,
45
    };
46
  }
47
);
48

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.