Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

159
Views
¿Cómo guardo el estado de diferentes componentes secundarios en una única matriz de estado en el componente principal con todos los valores?

Estoy tratando de guardar los estados de los componentes secundarios en una matriz en el componente principal. La estructura es algo así: -

 <App> <Quiz /> <Quiz /> <Quiz /> <Quiz /> <Quiz /> </App>

Cada componente secundario de Cuestionario tiene un estado llamado selectedOption que contiene el valor de la opción seleccionada (botón en el que se hizo clic) . ¿Hay alguna manera de pasar todo esto a una sola matriz de estado en el componente principal <App /> ? Estoy tratando de guardarlos en una matriz para poder mapear sus valores más tarde y verificar si es igual a la opción respectiva en otra matriz que contiene las respuestas correctas (con la ayuda del índice).

Código

<Aplicación / >

 function App() { const [showMenu, changeMenu] = useState(true); const [correctAnswers, setCorrectAnswers] = useState(["", "", "", "", ""]) // i need to save them here const [quiz, setQuiz] = useState([]); function getQuiz() { fetch("my api key") .then((res) => res.json()) .then((data) => setQuiz(data["results"])); } function getValues(val) { console.log(val); //this was only for the purpose of debugging but didnt work as i wanted } React.useEffect(() => { getQuiz(); }, []); const renderQuiz = quiz.map((val) => { let question = decodeURIComponent(val["question"]); let correctAnswer = decodeURIComponent(val["correct_answer"]); let wrongOptions = val["incorrect_answers"]; let allOptions = []; wrongOptions.map((elem) => allOptions.push(decodeURIComponent(elem))); allOptions.push(correctAnswer); allOptions = shuffle(allOptions); return ( <Quiz question={question} options={allOptions} correctOption={correctAnswer} getValues={getValues} /> ); }); }

Una parte del componente <Quiz/>

< Cuestionario / >

 export default function Quiz({ options, question, getValues, correctOption, ...props }) { const [chosenOne, setChosenOne] = React.useState(); const [selectedOption, setSelectedOption] = useState(""); const [isCorrect, setisCorrect] = useState(false); const list = [...options]; function simplyPrintThis(x) { let val = x.value; console.log(val); setSelectedOption(val); setisCorrect(val == correctOption) }
about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!