0
我使用SegmentedBar作爲選項卡。而我menu.html文件看起來像這樣:更改每個選項卡的內容Angular 2
<StackLayout orientation="vertical" width="310" height="610">
<nav>
<h1 class="title">Hello World</h1>
<SegmentedBar #tabs [items]="items" [selectedIndex]="selectedIndex" ></SegmentedBar>
</nav>
</StackLayout>
- 的問題是,即使我修改它,似乎沒有對UI的情況發生。它只顯示標籤,就是它,即'Hello World'沒有出現在界面上。我想修改我的html,所以還有其他的操作會發生。爲什麼會發生?
- 如何更改視圖,以便每個 選項卡都有不同視圖?
這裏是我的menu.component.ts文件:
import {Component, OnInit, OnDestroy, AfterViewInit, ViewChild, ElementRef} from '@angular/core';
import {Page} from 'ui/page';
import {SegmentedBar, SegmentedBarItem, SelectedIndexChangedEventData} from 'ui/segmented-bar';
@Component({
selector: 'tabs',
templateUrl:"./components/menu/menu.html"
})
export class TabsComponent implements OnInit, OnDestroy, AfterViewInit {
selectedIndex: number;
items: Array<any>;
@ViewChild("tabs") tabs: ElementRef; // equal to getViewById() in NativeScript core
constructor(private page: Page) {
this.selectedIndex = 0;
this.items = [{ title: 'Home' }, { title: 'G+' }, { title: 'Sync' }];
}
ngOnInit() {
}
ngAfterViewInit() {
this.tabs.nativeElement.on(SegmentedBar.selectedIndexChangedEvent, (args: SelectedIndexChangedEventData) => {
switch (args.newIndex) {
case 0:
console.log('Home selected')
break;
case 1:
console.log('G+ selected')
break;
case 3:
console.log('Sync selected')
break;
}
})
}
ngOnDestroy() { }
}