Angular如何防止缓存?
创始人
2024-10-29 07:00:31
0

在Angular应用程序中,可以使用以下方法防止浏览器缓存文件:

  1. 给应用之后的所有文件添加版本号(如?v=1.0.0),以便每次更改后都能强制客户端从服务器重新下载文件。可以在Angular的构建配置文件(angular.json, .angular-cli.json等)中配置输出文件名带上版本号:
"outputHashing": "all"

或者手动使用以下语法添加版本号:


  1. 让Angular服务端生成的HTML具有唯一性,以便客户端从服务器获得新页面的HTML而不是缓存的HTML。可以在app.module.ts文件中,通过指定providers为APP_INITIALIZER,以便在应用程序启动时执行:
import { NgModule, APP_INITIALIZER } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';

export function initApp() {
  // 用随机数作为版本号
  const version = Math.random();
  document.cookie = `appVersion=${version}`;
}

@NgModule({
  declarations: [AppComponent],
  imports: [BrowserModule],
  providers: [
    {
      provide: APP_INITIALIZER,
      useFactory: initApp,
      multi: true
    }
  ],
  bootstrap: [AppComponent]
})
export class AppModule {}

这将在应用程序房启动时随机生成一个版本号,并以cookie的方式存储。每当重新启动应用程序时,都会生成新的版本号。

注:这种方法基于一个假设:如果HTML是唯一的,那么它的资源也应该是唯一的。

  1. 配置服务器(如Nginx)为禁用浏览器缓存,以便客户端从服务器获取更新的文件。可以将下面的代码放入服务器的配置文件中:
location / {
  //

相关内容

热门资讯

黑科技ai代打(Wpk)外挂透... 黑科技ai代打(Wpk)外挂透视辅助插件(透视)细节方法(真是是真的有挂);1、Wpkai辅助优化,...
黑科技工具(wepOke)黑科... 黑科技工具(wepOke)黑科技透明挂辅助神器(透视)玩家教程(竟然是有挂)1、wepOke透视辅助...
黑科技能赢(wepOke)黑科... 黑科技能赢(wepOke)黑科技透明挂辅助神器(透视)wpk教程(总是存在有挂)1、完成wepOke...
黑科技辅助挂(wpk德州扑克)... 黑科技辅助挂(wpk德州扑克)外挂透视辅助教程(透视)曝光教程(好像是真的有挂)所有人都在同一条线上...
黑科技存在(wepOkE)黑科... 黑科技存在(wepOkE)黑科技透明挂辅助器(透视)wpk教程(其实有挂)1、很好的工具软件,可以解...
黑科技免费(微扑克小程序)外挂... 黑科技免费(微扑克小程序)外挂透视辅助助手(透视)德州教程(果然存在有挂)1、每一步都需要思考,不同...
黑科技了解(线上wpk德州ai... 黑科技了解(线上wpk德州ai)外挂透视辅助安装(透视)必胜教程(一直是有挂)1、超多福利:超高返利...
黑科技脚本(wEpoKe)黑科... 黑科技脚本(wEpoKe)黑科技透明挂辅助插件(透视)wepoke教程(果然真的有挂);1、wEpo...
黑科技规律(wpk微扑克)外挂... 黑科技规律(wpk微扑克)外挂透视辅助助手(透视)我来教教你(原来是真的有挂)1、wpk微扑克系统规...
黑科技中牌率(微扑克机器人)外... 黑科技中牌率(微扑克机器人)外挂透视辅助器(透视)攻略教程(切实是真的有挂)1、微扑克机器人系统规律...