Solved for future reference and for anyone else trying to solve this
This is my updated query
{{
questionsList.data.map((x, index) => {
const answerId = correctAnswerSelect[index].value;
const data = {
"points": 10,
"questionId": 0,
"questionText": "",
"answerOptions": [],
"answerOptionsImages": [],
}
data.questionId = index.toString();
data.questionText = questionText[index].value;
data.points = points[index].value;
if (answerId) {
data.answerId = answerId.toString();
}
data.answerOptions = answerOptions[index].data.map((y) => {
return y.answerOption
}).filter(answerOpt => answerOpt);
data.answerOptionsImages = answerOptions[index].data.map((y, i) => {
return {
id: i.toString(),
url: y.answerOptionImage,
answerId: i.toString()
}
}).filter(answerOptionImage => answerOptionImage.url);
if (data.questionText) {
return data;
}
}).filter(question => question)
}}
maping through questionList.data rather than creating an arbitrary array from the NumOfQuestions kept the questions within the "context" they were speaking about
I kinda got part of the answer from this reference: How can access the input filed of inside the listview inside the container - #2 by Tess