angular6 - ngx-spinner 在订阅之外无法工作

标签 angular6

下面是我尝试在 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');
    });
}

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

最佳答案

请检查以下代码。我认为稍微超时就能解决这个问题。

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

关于angular6 - ngx-spinner 在订阅之外无法工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56354890/

相关文章:

angular6 - 我想根据复选框选择显示/隐藏 Angular 6 react 形式组

javascript - 我在侧数组中有具有不同键的数组我想使用 Angular 6 中的 HTML 侧的特定键获取特定数组

angular - ionic 4 : "Loading Controller" dismiss() is called before present() which will keep spinner without dismissing

angular - Angular 6 的时差

javascript - 如何将字符串转换为 typescript 中的对象

javascript - Angular6 - 引用隐藏元素

angular6 - 如何将角度页面导出为多页 pdf

angular5 - 组件 ngOnInit 中的 Angular 订阅

angular - 如何将相同的 Angular 构建(dist)部署到具有不同后端 url 的多个环境?

html - Angular 6 是否正在删除默认元素边距?