如何通过JavaScript强制Web浏览器对页面进行硬刷新? 硬刷新意味着获取页面的新副本并刷新所有外部资源(图像,JavaScript,CSS等)。
答案 0 :(得分:242)
尝试使用:
location.reload(true);
当此方法接收true
值作为参数时,将导致始终从服务器重新加载页面。如果为false或未指定,浏览器可能从其缓存中重新加载页面。
更多信息:
答案 1 :(得分:1)
window.location.href = window.location.href
答案 2 :(得分:0)
我在 django 上工作,但没有任何效果,所以这个旁路对我有用,它正在转发到下一个,所以每当你只想回来时,刷新页面很难!这可能不是正确的方法,但可以解决问题,请尝试并告诉我!
window.history.forward(1);
答案 3 :(得分:0)
对于 Angular 用户和发现的 here,您可以执行以下操作:
<form [action]="myAppURL" method="POST" #refreshForm></form>
import { Component, OnInit, ViewChild } from '@angular/core';
@Component({
// ...
})
export class FooComponent {
@ViewChild('refreshForm', { static: false }) refreshForm;
forceReload() {
this.refreshForm.nativeElement.submit();
}
}
此网站上解释了它起作用的原因:https://www.xspdf.com/resolution/52192666.html
您还将在本文中了解硬重新加载如何适用于每个框架以及更多内容
Location:reload(),Location.reload() 方法重新加载当前的 URL,就像刷新按钮一样。仅使用 location.reload();如果您想执行强制重新加载(例如使用 Ctrl + F5 完成)以便从服务器而不是浏览器缓存重新加载所有资源,则不是解决方案。此问题的解决方案是,对当前位置执行 POST 请求,因为这总是会使浏览器重新加载所有内容。