Raphael
Raphael

Reputation: 291

How to use the timeout() in angular 2

Am setting a timeout in my code but i keep getting this error: Typescript Error Property 'timeout' does not exist on type 'Observable'. How can i solve this? Thanks in advance.

This is my code:

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();
         }

Upvotes: 2

Views: 1907

Answers (1)

Wesley Coetzee
Wesley Coetzee

Reputation: 4848

You could either add import 'rxjs/add/operator/timeout'

OR

You could use the standard JavaScript setTimeout() function like this:

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)

Upvotes: 2

Related Questions