我来自iOS背景,我是 Nativescript 的新手。我想知道在Nativescript中有没有与iOS viewWillAppear 等效的方法。
我想在每次出现视图时更新listview。 我试过以下方法。没有什么能做到这一点
ngOnInit(): void {
console.log("onInit called");
}
ngDoCheck(): void{
console.log("ngDoCheck called");
}
ngAfterContentInit(): void{
console.log("ngAfterContentInit called");
}
ngAfterContentChecked():void{
console.log("ngAfterContentChecked called");
}
ngAfterViewInit():void{
console.log("ngAfterViewInit called");
}
ngAfterViewChecked(): void{
console.log("ngAfterViewChecked called");
}
ngOnDestroy():void{
console.log("ngOnDestroy called");
}
答案 0 :(得分:1)
您可以使用NativeScript loaded
事件(API reference)
<ListView (loaded)="onListViewLoaded($event)"></ListView>
然后在组件文件
中onListViewLoaded(args) {
let list = <ListView>args.object;
}
答案 1 :(得分:0)
Angular使用变更检测来检查视图。
您可以使用以下
export class AppComponent implements OnChanges {
ngOnChanges(){
console.log("fired"); // fired each time change detection runs
}
}
答案 2 :(得分:0)
我不是nativescript的专家,我会尝试使用Angular回答你。
一旦创建组件,Angular就会带来组件生命周期。因此,如果您销毁组件并再次重新创建它,则可以使用ngAfterViewInit。
或者如果您只创建一次组件并隐藏/显示它,您应该使用Angular指令来改变视图的可见性属性。
注意:如果您为组件提供了任何输入属性,它将在显示/隐藏组件时更改您可以使用ngOnChanges,但只有在任何组件输入参数更改或组件放置在更改的检测树上时,Angular才会调用它。 / p>