2017-08-02 74 views

回答

6

你可以使用一個component @HostListener

喜歡的東西:

@Component({}) 
export class WindowComponent { 

constructor(){} 

    @HostListener('window:focus', ['$event']) 
    onFocus(event: any): void { 
     // Do something 
    } 

    @HostListener('window:blur', ['$event']) 
    onBlur(event: any): void { 
     // Do something 
    } 

} 

只是檢查,你不必多WindowComponent在同一時間運行,因爲你會有意想不到的行爲,因爲每個實例將這些事件作出反應。

+0

感謝您抽出寶貴時間給我的朋友。我有一個問題......我如何在組件內使用它?我需要使用訂閱? –

+0

歡迎您,不需要使用訂閱,當組件被銷燬時,angular會移除監聽器,當瀏覽器觸發'window.onfocus'時,'onFocus'函數將被觸發,與'blur'相同。 –

+0

謝謝我的朋友。這工作完美 –