【问题标题】:How to use the timeout() in angular 2如何在角度 2 中使用 timeout()
【发布时间】:2018-01-30 07:37:46
【问题描述】:

我在我的代码中设置了超时,但我不断收到此错误:Typescript 错误 “可观察”类型上不存在属性“超时”。我该如何解决这个问题?提前致谢。

这是我的代码:

this.http.post(this.global.api_url + '/cancel_order', {id: product._id})
    .timeout(10000)
    .map(res => res.json())
    .subscribe((data) => {
        if (data.result.id != null && data.result.rev != null && data.result.ok == true && data.status == 201) {
            this.global.toast("Order canceled", "toast-error");
            let del_data = [{_id: product._id, _rev: product._rev}];
            this.orders.delCart(del_data);
            loader_send_1.dismiss();
            this.ngOnInit();
         } else {
             this.global.toast("Failed to cancel order", "toast-error");
             loader_send_1.dismiss();
         }

【问题讨论】:

  • 你添加了导入import 'rxjs/add/operator/timeout'
  • 使用 rxjs 时,您必须导入您在每个文件中使用的运算符。像这样:''import'rxjs/add/operator/timeout''''import 'rxjs/add/operator/map'''
  • 感谢 Rahul Singh,我补充了这一点,问题就解决了。谢谢
  • 也感谢 Faisal 和 Sebastian。

标签: angular ionic-framework settimeout


【解决方案1】:

您可以添加import 'rxjs/add/operator/timeout'

您可以像这样使用标准的 JavaScript setTimeout() 函数:

setTimeout(() => {
    this.http.post(this.global.api_url + '/cancel_order', {id: product._id})
        .map(res => res.json())
        .subscribe((data) => {
            if (data.result.id != null && data.result.rev != null && data.result.ok == true && data.status == 201) {
                this.global.toast("Order canceled", "toast-error");
                let del_data = [{_id: product._id, _rev: product._rev}];
                this.orders.delCart(del_data);
                loader_send_1.dismiss();
                this.ngOnInit();
             } else {
                 this.global.toast("Failed to cancel order", "toast-error");
                 loader_send_1.dismiss();
             }
}, 1000)

【讨论】:

  • 感谢 import 'rxjs/add/operator/timeout' 为我工作
  • 不要使用 setTimeout 作为包装器!它会在您的应用程序中引起滴答声,因此它是阻燃的。 stackoverflow.com/questions/43634031/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-04-29
  • 2016-04-27
  • 1970-01-01
  • 2017-07-15
  • 2018-06-27
  • 2016-11-26
  • 1970-01-01
相关资源
最近更新 更多