В IE 11 Angular 5 проблема с кэшем - PullRequest
0 голосов
/ 20 февраля 2019

Мы используем Angular 5, и в нашем проекте мы создаем / изменяем значения в пользовательском интерфейсе и сохраняем в базе данных с помощью REST.

После изменения пользовательского интерфейса и после нажатия кнопки Сохранить.пользовательский интерфейс НЕ отображается с измененным пользовательским интерфейсом, а предыдущий.Когда выполняется Hard Refresh в IE (ctrl + F5), он выполняет вызовы REST и отображает правильные значения.Это происходит только в IE 11, а в Chrome работает нормально.

Пожалуйста, дайте мне знать, можем ли мы контролировать очистку кэша только этого приложения из кода или любые другие предложения приветствуются.

Спасибо, винод

1 Ответ

0 голосов
/ 20 февраля 2019

Чтобы решить вашу проблему, вам нужно переопределить 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 }
    ]
})

Надеюсь, эта справка!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...