axios 在Vue拦截器中使用await

63lcw9qa  于 2022-11-05  发布在  iOS
关注(0)|答案(1)|浏览(200)

如何在拦截器中使用await?我已经尝试了下面的代码,但是它没有输出值。

http.interceptors.push(async (req, next) => {
    final value = await someAsyncFunction();
    console.log(value);
})

我也尝试了这段代码,它可以工作,但我想使用await,因为我需要在它之后同步执行一些代码。

http.interceptors.push(async (req, next) => {
    someAsyncFunction().then(value => console.log(value));
    executeSomethingElse();
})
6ljaweal

6ljaweal1#

我认为您不能在拦截器上使用匿名函数,因此您应该这样编写它

http.interceptors.push(async function (req, next) {
    await someAsyncFunction()
})

这是因为Vue无法在后台访问this属性。

相关问题