Promise的axios异步写法
时间: 2023-11-02 22:58:50 浏览: 102
在使用Promise的axios异步写法中,可以通过封装axios来实现。首先,在api.js文件中,我们可以创建一个全局的axios实例,并将其导出。这样,我们就可以在整个应用中使用同一个axios实例了。在封装的axios中,我们可以使用Promise来处理异步请求。具体的写法如下所示:
```javascript
import axios from 'axios';
const api = axios.create({
// 这里可以配置一些全局的axios选项,例如baseURL、headers等
});
export function fetchData(url) {
return new Promise((resolve, reject) => {
api.get(url)
.then(response => {
resolve(response.data);
})
.catch(error => {
reject(error);
});
});
}
```
在上面的代码中,我们首先创建了一个名为api的axios实例,并将其导出。然后,我们定义了一个名为fetchData的函数,该函数接受一个url参数,并返回一个Promise对象。在函数内部,我们使用api实例的get方法发送GET请求,并使用Promise的resolve和reject来处理请求的结果。
使用这种封装的axios异步写法时,我们可以通过调用fetchData函数来发送异步请求,例如:
```javascript
fetchData('/api/data')
.then(data => {
console.log('请求成功:', data);
})
.catch(error => {
console.log('请求失败:', error);
});
```
通过使用Promise和封装的axios,我们可以实现更简洁、可读性更高的异步写法,避免了层层回调的问题。
阅读全文