Angular 2 перевод смена языка в приложении

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

Спасибо

import {Component} from "@angular/core";
import {TranslateService} from "ng2-translate";
import {SettingsService} from "../settings.service";

@Component({
    selector: 'rn-header',
    templateUrl: './header.html',
    styleUrls: ['./header.scss']
})
export class HeaderComponent {

    constructor(private translate: TranslateService, private settings: SettingsService) {
        translate.setDefaultLang(settings.getLanguage());
        translate.use(settings.getLanguage());
    }

    changeLanguage(language) {
        console.log('Language changed to: '+language);
        this.settings.setLanguage(language);
        this.translate.use(language);

    }

}

и сервис

import {Injectable} from "@angular/core";
import {CookieService} from "angular2-cookie/services/cookies.service";

@Injectable()
export class SettingsService {
    defaultLanguage: string = 'en';

    constructor(private _cookieService: CookieService) {

    }

    getLanguage() {
        if (this._cookieService.get('RN_LANGUAGE_PREFERENCE')) {
            return this._cookieService.get('RN_LANGUAGE_PREFERENCE');
        }

        return this.defaultLanguage;
    }

    setLanguage(language: string) {

        this._cookieService.put("RN_LANGUAGE_PREFERENCE", language);
    }

}

Ответы на вопрос(1)

Ваш ответ на вопрос