Skip to content

Commit

Permalink
Questoes aleatorias separadas por tipos
Browse files Browse the repository at this point in the history
  • Loading branch information
williamdlm committed Oct 13, 2021
1 parent 6868e81 commit d224903
Show file tree
Hide file tree
Showing 2 changed files with 94 additions and 2 deletions.
21 changes: 19 additions & 2 deletions pages/quiz.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import React, { useContext } from "react";
import Background from "../src/components/Background";
import Widget from "../src/components/Widget";
import db from "../db.json";
import dbQuestions from "../questions.json";
import QuizContainer from "../src/components/QuizContainer";
import Button from "../src/components/Button";
import AlternativesForm from "../src/components/AlternativeForms";
Expand Down Expand Up @@ -64,6 +65,8 @@ function QuestionWidget({
const isCorrect = selectedAlternative === question.answer;
const hasAlternativeSelected = selectedAlternative !== undefined;
const { completeQuestion } = useContext(ExperienceContext);
console.log(question);
// console.log(questionIndex);
return (
<Widget style={{ margin: "0 auto" }}>
<Widget.Header>
Expand Down Expand Up @@ -93,10 +96,12 @@ function QuestionWidget({
event.preventDefault();
setIsQuestionSubmited(true);
addResult(isCorrect);
console.log(`before ${question}`);
setTimeout(() => {
{
isCorrect && completeQuestion(1);
}
console.log(`after ${question}`);
onSubmit();
setIsQuestionSubmited(false);
setSelectedAlternative(undefined);
Expand Down Expand Up @@ -151,9 +156,20 @@ export default function QuizPage(props) {
const [results, setResult] = React.useState([]);
const [currentQuestion, setCurrentQuestion] = React.useState(0);
const questionIndex = currentQuestion;
const question = db.questions[questionIndex];
const totalQuestions = db.questions.length;
const [question, setQuestion] = React.useState(
handleChangeQuestion(questionIndex)
);
const totalQuestions = 2;

function handleChangeQuestion(type) {
console.log("entrou");
const questionsForType = dbQuestions.questions.filter((question) => {
return question.type === type;
});
return questionsForType[
Math.floor(Math.random() * questionsForType.length)
];
}
function addResult(result) {
setResult([...results, result]);
}
Expand All @@ -168,6 +184,7 @@ export default function QuizPage(props) {
const nextQuestion = questionIndex + 1;
if (nextQuestion < totalQuestions) {
setCurrentQuestion(nextQuestion);
setQuestion(handleChangeQuestion(nextQuestion));
} else {
setScreenState(screenStates.RESULT);
}
Expand Down
75 changes: 75 additions & 0 deletions questions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
{
"questions": [
{
"image": "https://cdn.dribbble.com/users/1129235/screenshots/3123420/media/6802b1a795f43fb038aa3c7f60c88ee8.gif",
"type": 0,
"title": "De acordo com a teoria da evolução humana os primeiros hominídeos pertenciam ao grupo dos:",
"description": "'O ser humano só evolui a partir da necessidade.' -Vivaldo Neto",
"answer": 4,
"alternatives": [
"Homo habilis",
"Homo erectus",
"Homo ergaster",
"Homo sapiens",
"Australopithecus"
]
},
{
"image": "https://cdn.dribbble.com/users/1129235/screenshots/3123420/media/6802b1a795f43fb038aa3c7f60c88ee8.gif",
"type": 0,
"title": "De onde é a invenção do chuveiro elétrico?",
"description": "'O ser humano só evolui a partir da necessidade.' -Vivaldo Neto",
"answer": 2,
"alternatives": ["França", "Inglaterra", "Brasil", "Austrália", "Itália"]
},
{
"image": "https://cdn.dribbble.com/users/1129235/screenshots/3123420/media/6802b1a795f43fb038aa3c7f60c88ee8.gif",
"type": 0,
"title": "Qual o nome do presidente do Brasil que ficou conhecido como Jango?",
"description": "'O ser humano só evolui a partir da necessidade.' -Vivaldo Neto",
"answer": 4,
"alternatives": [
"Jânio Quadros",
"Jacinto Anjos",
"Getúlio Vargas",
"João Figueiredo",
"João Goulart"
]
},
{
"image": "https://res.cloudinary.com/dhmkfekt2/image/upload/v1633060616/a_vccpv5.gif",
"type": 1,
"title": "Quais o menor e o maior país do mundo??",
"description": "Essa é para aquecer...",
"answer": 0,
"alternatives": [
"Vaticano e Rússia",
"Nauru e China",
"Mônaco e Canadá",
"Malta e Estados Unidos"
]
},
{
"image": "https://res.cloudinary.com/dhmkfekt2/image/upload/v1633060616/a_vccpv5.gif",
"type": 1,
"title": "Qual desses Países não é Europeu?",
"description": "Essa é para aquecer...",
"answer": 2,
"alternatives": ["Macedonia", "Espanha", "Casaquistão", "Polonia"]
},
{
"image": "https://res.cloudinary.com/dhmkfekt2/image/upload/v1633060616/a_vccpv5.gif",
"type": 1,
"title": "O Brasil é de que continente?",
"description": "Essa é para aquecer...",
"answer": 1,
"alternatives": [
"America do norte",
"America do sul",
"America central",
"Europa",
"Asia"
]
}
]
}

1 comment on commit d224903

@vercel
Copy link

@vercel vercel bot commented on d224903 Oct 13, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.