Assigning a value to a list of items

I am trying to update each answer in a list so I can pass each answer to redux and send all the answers to an API.

I have tried to pass each answer as a variable and assign that to a state in an array. I am really confused by this.

const DATA = [{
    id: '1',
    title: 'Do you feel appropriately rewarded for your work?',
  },
  {
    id: '2',
    title: 'Are you happy with your working hours?',
  },
  {
    id: '3',
    title: 'Do you feel recognised when you do something well?',
  },
  {
    id: '4',
    title: 'Do you have enough information to do your job well?',
  },
  {
    id: '5',
    title: 'Do you have the resources you need to do your job well?',
  },
  {
    id: '6',
    title: 'Do you feel empowered to make decisions?',
  },

];

const [data, setData] = useState('');
let newData = [...data];
const questionIndex = newData.findIndex((q, i) => q.id == idVariable);
if (questionIndex > -1) newData[questionIndex].answer = answerVariable;


const handleSubmit = () => {
  navigation.navigate('SplashScreen')
  setData(newData);
  console.log("hey", newData)
}

Solution 1:

import React, { useEffect, useState } from "react";

const data = [{
    id: '1',
    title: 'Do you feel appropriately rewarded for your work?',
  },
  {
    id: '2',
    title: 'Are you happy with your working hours?',
  },
  {
    id: '3',
    title: 'Do you feel recognised when you do something well?',
  },
  {
    id: '4',
    title: 'Do you have enough information to do your job well?',
  },
  {
    id: '5',
    title: 'Do you have the resources you need to do your job well?',
  },
  {
    id: '6',
    title: 'Do you feel empowered to make decisions?',
  },

];

Solution 2:

it should be like that, pelease try, as setState udate asych way to you will not get result immidieatly

const [questions, setQuestions] = useState(DATA)

const handleSubmit = () => { 
  setQuestions((prevState) => {
       const questionIndex =  prevState.findIndex((question) => question.id === idVariable)
      if (questionIndex > -1) {
         questions[questionIndex].answer = answerVariable;
      }

    return questions;

  });
  navigation.navigate('SplashScreen')
  console.log("hey", newData)
}