Save Async/Await response on a variable
1) Return something from your asyncExample
function
const asyncExample = async () => {
const result = await axios(users)
return result
}
2) Call that function and handle its returned Promise
:
;(async () => {
const users = await asyncExample()
console.log(users)
})()
Here's why should you handle it like this:
- You can't do top-level
await
(there's a proposal for it though);await
must exist within anasync
function.
However I must point out that your original example doesn't need async/await
at all; Since axios
already returns a Promise
you can simply do:
const asyncExample = () => {
return axios(users)
}
const users = await asyncExample()
try..catch
creates a new block scope. Use let
to define data
before try..catch
instead of const
, return
data
from asyncExample
function call
(async() => {
const users = 123;
const asyncExample = async() => {
let data;
try {
data = await Promise.resolve(users);
} catch (err) {
console.log(err);
}
return data;
};
//Save response on a variable
const globalData = await asyncExample();
console.log(globalData);
// return globalData;
})();