首页 > 解决方案 > ngx-spinner 在订阅之外不工作

问题描述

下面是我尝试在 ngOnInit() 中执行的代码。

ngOnInit() {
    this.spinner.show('full_settings');
    this.settings_api.get_all_settings().subscribe(response => {    
        console.log(response);
    }, error => {
        console.log('error');
    });
}

执行此代码微调器时未显示。也没有任何控制台错误。所以我尝试将 spinner.show() 放在订阅中。这工作正常。

ngOnInit() {
    this.settings_api.get_all_settings().subscribe(response => {    
        this.spinner.show('full_settings');
        console.log(response);
    }, error => {
        console.log('error');
    });
}

我希望它在订阅之外工作。我在这里发现了同样的问题,但那里所说的解决方案对我不起作用。

标签: angular6

解决方案


请检查以下代码。我认为一点超时将解决这个问题。

ngOnInit() {
    setTimeout(() => { this.spinner.show('full_settings'); }, 30);
    this.settings_api.get_all_settings().subscribe(response => {
        console.log(response);
    }, error => {
        console.log('error');
    });
}

推荐阅读