as far as I know I cannot get an array of structs from solidity to javascript, so make individual request for each request from javacript:
const address = context.params.id;
const campaign = Campaign(address);
const requestCount = await campaign.methods.getRequestsCount().call();
const donatorsCount = await campaign.methods.donatorsCount().call();
// this returns: requests.count 4
console.log("requests.count", requestCount);
const requests = await Promise.all(
Array(requestCount)
.fill() // I tried fill(0)
.map((element, index) => {
return campaign.methods.requests(index).call();
})
);
console.log("requests", requests);
I have 4 requests but I always get only the first request