передать значение из ngOnInit в шаблон

export class AppComponent implements OnInit {
  sub: any;
  lang: string;

constructor(public translate: TranslateService, public route: ActivatedRoute, private languageService: LanguageService) { }

ngOnInit() {

    this.sub = this.route.params.subscribe(p => {
        let lang = p['lang'];
        this.lang = lang;
    });

    this.languageService.translate.use(this.lang);
}
}

и в шаблоне у меня есть эта ссылка

<a [routerLink]="['en']">test</a>

Как я могу передать значение из ngOnInit в этот routeLink? например, я хочу что-то вроде этого:

<a [routerLink]="[(lang)]">test</a>

но это не определено. в ngOnInit это имеет значение


person gsiradze    schedule 12.10.2016    source источник
comment
Разве <a [routerLink]="lang">test</a> не работает на вас?   -  person Sefa    schedule 12.10.2016
comment
ну все равно не определено   -  person gsiradze    schedule 12.10.2016


Ответы (1)


Если lang действительно не является неопределенным, вы должны просто сделать это в своем шаблоне:

<a routerLink="{{lang}}">test</a>

or

<a [routerLink]="lang">test</a>

Сначала проверьте с помощью console.log(lang) в вашем ngOnInit, если он действительно установлен.

person Alexander Ciesielski    schedule 12.10.2016