Как сделать браузер обратно отключенным в угловом? - PullRequest
0 голосов
/ 04 октября 2018

Я работаю над угловым 6. У меня несколько страниц, и я хочу отключить браузер только на одной странице.Я использовал для этого window.onpopstate = function (e) { window.history.forward(); };, это делает браузер обратно отключенным для всех страниц , потому что когда я перехожу на другие страницы и нажимаю на браузер там, он также отключает браузер, но я хочу отключить браузер только наодна страница.Как можно сделать так, чтобы браузер был отключен только для одной страницы, а оставшаяся часть этой страницы для браузера была включена в Angular?

уведомление-утверждено-id.component.ts

import { Component, OnInit } from '@angular/core';
import { StatusService } from '../service/status.service';
import { Notification } from '../classes/notification';
import { Router } from '@angular/router';

@Component({
  selector: 'app-notific-approved-by-id',
  templateUrl: './notific-approved-by-id.component.html',
  styleUrls: ['./notific-approved-by-id.component.css']
})
export class NotificApprovedByIdComponent implements OnInit {

  notificationObj : Notification = new Notification();
  ngOnInit() {
    var em;
    this.statusService.getNotificationApprovedById(em).subscribe(
      (data) => {
        if(data != undefined && data.payload != undefined && data.status == 1){
          this.notificationObj = data.payload[0];
          window.onpopstate = function (e) { window.history.forward(); };
        }
      }
     );
   }
}

1 Ответ

0 голосов
/ 04 октября 2018

вы должны удалить слушателей при уничтожении страницы

export class NotificApprovedByIdComponent implements OnInit {
constructor(private statusService : StatusService,private router : Router) { }

const orig_onpopstate: any = window.onpopstate;
ngOnInit() {
  var em;
  this.statusService.getNotificationApprovedById(em).subscribe(
  (data) => {
    if(data != undefined && data.payload != undefined && data.status == 1){
      window.onpopstate = function (e) { window.history.forward(); };
    }
  });
}

ngOnDestroy(): void {
    window.onpopstate = orig_onpopstate;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...