我们正在使用Angular 5,在我们的项目中,我们正在使用REST创建/修改UI中的值并存储在数据库中。
修改UI后,单击“保存”。该用户界面未显示修改后的用户界面,而是上一个用户界面。在IE(ctrl + F5)中进行硬刷新时,它将进行REST调用并显示正确的值。仅在IE 11和Chrome中会发生这种情况。
请让我知道我们是否可以通过代码控制仅对此应用程序的清除缓存,或者任何其他建议。
谢谢 vinod
答案 0 :(得分:1)
要解决您的问题,您需要覆盖RequestOptions
并按如下所示设置'Cache-Control': 'no-cache',
custom-request-option.ts
import { Injectable } from '@angular/core';
import { BaseRequestOptions, Headers } from '@angular/http';
@Injectable()
export class CustomRequestOptions extends BaseRequestOptions {
headers = new Headers({
'Cache-Control': 'no-cache',
'Pragma': 'no-cache',
'Expires': 'Sat, 01 Jan 2000 00:00:00 GMT'
});
}
you.app.module.ts
@NgModule({
...
providers: [
...
{ provide: RequestOptions, useClass: CustomRequestOptions }
]
})
希望此帮助!