vue项目在IE浏览器中发出请求后视图没有更新

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue项目在IE浏览器中发出请求后视图没有更新相关的知识,希望对你有一定的参考价值。

参考技术A 问题:在vue项目中,对页面进行增删改之后会重新请求列表数据,然后视图会自动更新。但是IE浏览器视图并没有更新。

原因:IE浏览器中,如果发送的请求URL相同的话,默认会使用之前请求回来后缓存的数据,而不会请求接口获取最新数据。

解决方案:

在axios请求的参数中添加一个随机数

get请求在ie浏览器下有缓存

今天做项目的时候,数据库有新数据更新后,发现页面的行为却没有更新;

打断点调试的时候,发现程序也不进方法;

最终发现是因为请求数据的时候使用了get请求,而且在IE10下导致的;

注:IE浏览器中使用get请求,如果每次url一致,浏览器会使用缓存的值,而不去服务区获取最新的数据;

为了避免行为不一致;可以使用以下3种办法;

1.在url后面添加一个随机数或guid;

2.使用ajax get 请求,将cache设置为false;

3.直接改用post请求;

以上是关于vue项目在IE浏览器中发出请求后视图没有更新的主要内容,如果未能解决你的问题,请参考以下文章

axios不发出请求,没有结果,没有错误

vue ie浏览器 页面缓存 不请求接口

无法向 .NET Core MVC 发出 HTTP 发布请求

Vue.js - 如何在数据对象更改时向父组件发出?

IE11 未发起 CORS 请求

如何在一个视图中发出多个 Fe​​tch 请求(SwiftUI)