Ad
Combine Multiple Await Variables Into One Array
Im having trouble combining two async variables into one array:
My code:
async function fetchMenus ({actions, state}) {
return actions.theme.fetchToken().then(async () => {
const items = await fetch("url", {
method: "GET",
headers: {
Authorization: `Bearer ${state.theme.token}`,
},
});
const menu = await fetch("url", {
method: "GET",
headers: {
Authorization: `Bearer ${state.theme.token}`,
},
});
return [menu.json(), items.json()];
});
};
As a response i recieve 2 fulfilled promises, but i want to receive the results. How can i solve this?
Ad
Answer
You can do
Promise.all(fetchMenus(parameters).result).then((results) => {
... work with results
});
Promise.all puts an array of promises into a new promise, so to say.
It is typically used after having started multiple asynchronous tasks to run concurrently and having created promises for their results, so that one can wait for all the tasks being finished.
Ad
source: stackoverflow.com
Related Questions
- → How to update data attribute on Ajax complete
- → October CMS - Radio Button Ajax Click Twice in a Row Causes Content to disappear
- → Octobercms Component Unique id (Twig & Javascript)
- → Passing a JS var from AJAX response to Twig
- → Laravel {!! Form::open() !!} doesn't work within AngularJS
- → DropzoneJS & Laravel - Output form validation errors
- → Import statement and Babel
- → Uncaught TypeError: Cannot read property '__SECRET_DOM_DO_NOT_USE_OR_YOU_WILL_BE_FIRED' of undefined
- → React-router: Passing props to children
- → ListView.DataSource looping data for React Native
- → Can't test submit handler in React component
- → React + Flux - How to avoid global variable
- → Webpack, React & Babel, not rendering DOM
Ad