Я некоторое время бился с этим и буду признателен за любую помощь. Я запрашиваю базу данных MongoDB, в которой есть массивы, встроенные в схему документа. Вот схема:
const segmentSchema = new Schema({
author: String, //Email address
content: String,
order: Number
})
const storySchema = new Schema({
title: String,
isPublic: Boolean,
complete: Boolean,
segments: [segmentSchema],
segCount: Number,
lastUpdate: Date,
locked: Boolean,
rounds: Number,
authors: [String]
})
Когда я получаю результаты обратно, данные там, но когда я пытаюсь выполнить функции, определенные для массива c, я получаю ошибки. Вот контекст:
fetch(`/api/stories/${props.storyID}`, {
method: 'GET',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json'
},
})
.then(response => response.json())
.then(theStory => {
theStory.authors.foreach(auth => {
console.log(auth);
}
})
.catch(err => {
let errorArray = [`Sorry, there was an issue loading the story: ${err}`];
console.log('Issue loading story: ', err);
setErrors(errorArray);
}
Я пробовал каждый способ получить их в массивы, чтобы я мог использовать функции, такие как foreach и .map et c, но не повезло. Я думал, что они должны просто вернуться как массивы, как массивы в схеме, и когда я добавлю их в базу данных, но не повезло.
Спасибо!