Ionic framework 如何在ionic 3中禁用视图缓存
我们在d3js中使用离子3。我们在每个组件中都有很多d3.js转换(我们认为这需要很多内存)。 最初,应用程序对导航和内容呈现的响应很快,但导航5-10页后,应用程序的响应速度会变慢。我们看到页面导航和内容呈现的滞后。 我们认为这是因为图标3中的视图缓存(不确定图标3中是否启用了视图缓存) 当用户点击导航按钮时,我们按下或弹出导航控制器。 有没有办法禁用视图缓存,这样无论用户在视图之间导航多少次,应用程序性能都是相同的 “@IONAL/app脚本”:“3.1.9”, “@ionic native/core”:“4.7.0” 主页和图形页面之间的示例代码Ionic framework 如何在ionic 3中禁用视图缓存,ionic-framework,ionic3,Ionic Framework,Ionic3,我们在d3js中使用离子3。我们在每个组件中都有很多d3.js转换(我们认为这需要很多内存)。 最初,应用程序对导航和内容呈现的响应很快,但导航5-10页后,应用程序的响应速度会变慢。我们看到页面导航和内容呈现的滞后。 我们认为这是因为图标3中的视图缓存(不确定图标3中是否启用了视图缓存) 当用户点击导航按钮时,我们按下或弹出导航控制器。 有没有办法禁用视图缓存,这样无论用户在视图之间导航多少次,应用程序性能都是相同的 “@IONAL/app脚本”:“3.1.9”, “@ionic native
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
constructor(public navCtrl: NavController) {
console.log('construct again');
}
showMigrationChart() {
this.navCtrl.push(MigrationChart);
}
showColumnChart() {
this.navCtrl.push(ColumnChart);
}
}
@Component({
selector: 'migration-chart',
templateUrl: '../../common/chart.html'
})
export class MigrationChart implements OnInit {
@ViewChild('appChart') private chartContainer: ElementRef;
public chartName = 'Column Chart';
constructor(public navCtrl: NavController) {
console.log('MigrationChart construct again');
}
ngOnInit() {
this.chartName = migrationEngine(this.chartContainer.nativeElement);
}
public onBackClick() {
console.log('getViews length= '+ this.navCtrl.length());
console.log('getViews = ', this.navCtrl.getViews());
this.navCtrl.pop();
}
}
离子骨架没有问题。 在页面/组件关闭时,javascript计时器和while循环并没有得到适当的清理,这导致应用程序速度减慢。
我们更改了代码以在Ngondestory中进行清理,现在一切正常。是否尝试更改根页面而不是push/pop?尝试并比较结果。angulars github上肯定有类似您的已知问题:/