Hiyve Components - v1.0.0
    Preparing search index...
    • A drill in a component: the round being asked, answering it, moving on, finishing early with what was answered, and starting over. The drill is drawn from seed when it starts and whenever seed or length change — in the same render, so the old drill's question is never shown — so a new seed is a new drill; the generate function is read at that moment, so it need not be memoised.

      Type Parameters

      Parameters

      Returns UseDrillResult<Q>

      const drill = useDrill({ generate: (random) => generateNoteQuestion(settings, random), length: 10, seed });
      drill.question ? <DrillCard round={drill.round} index={drill.index} total={drill.total} loadEngine={loadEngine} onAnswer={drill.answer} onNext={drill.next} />
      : <DrillScoreCard summary={drill.summary} onAgain={() => drill.restart()} onAnother={() => setSeed(newSeed())} />