Как изменить панель действий для каждой вкладки в Nativescript Angular

У меня есть приложение TabBar, использующее Nativescript Angular. Я хочу изменить кнопки панели действий на основе выбранной вкладки. Я просто следую этому уроку https://www.youtube.com/watch?v=7go3L70QfIQ

Но не знаю, как использовать TabView.selectedIndexChangedEvent в Angular. Если кто-то сделал это, пожалуйста, поделитесь куском кода.

Спасибо

2 ответа

Решение

Я решаю проблему, используя rxjs/Observable уведомления. Логика отправляет уведомление, когда происходит изменение вкладки. Основываясь на индексе вкладок, я могу выбрать методы события касания кнопки панели действий.

    // send notify to child components
    let message = {
        "tabIndex" : this.tabIndex,
        "tappedButton" : "someButton"
    };
    this.notifyService.send(JSON.stringify(message));

Используйте этот пример как ссылку на то, как использовать событие selectedIndexChange в приложении на основе Angular.

Например:

<TabView selectedIndex="0"  (selectedIndexChange)="onIndexChanged($event)">
<!-- more code follows here -->

А затем в файле компонента используйте обратный вызов onIndexChanged

public onIndexChanged(args) {
    let tabView = <TabView>args.object;
    console.log("Selected index changed! New inxed: " + tabView.selectedIndex);
}
Другие вопросы по тегам