[Vuejs]-Vue – returning the result of a synchronous method

1👍

Async functions Always return a promise.

You can use the await syntax to return it properly.

    async getData(id) {
          const response = await fetch(`${API_URL}api/${id}`, {
            method: "GET",
            headers: {
              authorization: `Bearer ${localStorage.token}`
            }
          })
           const data = await response.json()

           return data
        }

You can access the data out of that function anywhere you call it.

let data = null
object.getData(2)
.then(x => {
data = x
})

Also if you are going to use async await make sure to use try and catch to handle any errors that come up.

    async getData(id) {
       try {
          const response = await fetch(`${API_URL}api/${id}`, {
            method: "GET",
            headers: {
              authorization: `Bearer ${localStorage.token}`
            }
          })
           const data = await response.json()

           return data
        }
      } catch(err) {
    console.error(err)
    }

Leave a comment