Skip to content

Scoring Quiz टेम्पलेट

ScoringQuiz उन डायग्नोस्टिक के लिए है जहाँ हर उत्तर का संख्यात्मक मान होता है। अंतिम परिणाम कुल स्कोर के आधार पर एक टियर है।

उपयोग

vue
<ScoringQuiz 
  :questions="questions" 
  :tiers="tiers" 
  emailEndpoint="/.netlify/functions/record-quiz"
  quizName="मेरा स्कोरिंग क्विज़"
>
  <template #intro>
    <div class="intro-content">
      <h1>अपना स्कोर देखें</h1>
      <p>प्रश्नों के उत्तर दें और अपना रेटिंग पाएं।</p>
    </div>
  </template>
</ScoringQuiz>

<script setup>
const questions = [
  {
    id: 'q1',
    prompt: 'आप कितनी बार व्यायाम करते हैं?',
    options: [
      { value: 5, label: 'रोज', icon: '🏃' },
      { value: 1, label: 'कभी नहीं', icon: '🛋️' }
    ]
  }
];

const tiers = [
  {
    min: 5,
    max: 5,
    label: 'Athlete',
    description: 'आप फिट हैं।',
    action: 'जारी रखें!'
  },
  {
    min: 0,
    max: 4,
    label: 'Beginner',
    description: 'शुरुआत कर रहे हैं।',
    action: 'ज्यादा मूव करें।'
  }
];
</script>

Props

Propप्रकारआवश्यकविवरण
questionsArrayहाँप्रश्नों की सूची
tiersArrayहाँटियर परिभाषाएँ
emailEndpointStringनहींपरिणाम POST करने की URL
quizNameStringनहींट्रैकिंग नाम

डेटा संरचना

Question

javascript
{
  id: 'unique_id',
  prompt: 'प्रश्न',
  options: [
    { value: 5, label: 'उत्तर', icon: 'इमोजी' }
  ]
}

Tier

javascript
{
  min: 0,
  max: 10,
  label: 'टियर नाम',
  description: 'विवरण',
  action: 'सुझाव'
}

चेकलिस्ट

  1. फाइल बनाएँ docs/hi/quizzes/<slug>/index.md; फोल्डर रूटिंग होने पर slug फ्रंटमैटर की जरूरत नहीं।
  2. नया क्विज़ docs/hi/quizzes/index.md में जोड़ें।
  3. स्कोरिंग स्थिर रखें (प्रति प्रश्न उच्चतम मान चुना जाए)।
  4. npm run docs:build से जाँचें कि पाथ रेंडर हो रहा और लैंडिंग पर दिख रहा है।