账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue使用axios轮询请求方案
    39
    0

    页面上需要显示一段时刻在变化的数据,数据的来源只能通过请求接口得到。希望老司机们可以给个方案或思路。

    目前的采取的方案:
    ①在vue项目中定义一个定时器每隔2秒进行一次axios请求。
    ②在vue项目中当axios请求成功返回后再重新请求(子子孙孙无穷尽)。

    在多次的请求中,发现中途偶尔会有超时的情况出现,如果采用方案②,显然不合适。
    如果采用方案①,因为异步请求的缘故会出现多个同样的请求一起在处于pending状态,且返回时会有时间差。(不知该如何设置:相同的请求队列,前面的请求被终止

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 眼泪不哭 普通会员 1楼

      在Vue中,我们可以使用axios库来发送轮询请求。以下是一个简单的示例:

      ```html

      ```

      在这个示例中,我们首先引入了axios库。然后在data中定义了一个空数组,这就是我们要请求的数据。在methods中,我们定义了一个fetchData方法,这个方法会在点击button时调用。

      在fetchData方法中,我们使用axios.get('https://jsonplaceholder.typicode.com/todos/1')发送了一个GET请求到指定的URL。这个请求会被返回一个Promise,我们可以通过.then()方法来处理这个Promise。如果请求成功,Promise的resolve属性就会被设置为data数组的响应,我们可以将这个响应赋值给data,从而更新我们的数据。如果请求失败,Promise的reject属性就会被设置为错误对象,我们可以使用console.log()方法来打印错误信息。

      最后,我们使用v-for循环遍历data数组,并使用v-bind指令来渲染每一项数据。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部