2017-05-08 29 views
2

我正在用tslint檢查我的角度項目,並且我得到了這個錯誤,我不明白原因。錯誤是:預計轉讓或函數調用TSLint返回期望的任務或函數調用

getInfoPrinting() { 
this.imprimirService.getInfoPrinting().subscribe(
    response => { 
    this.loading = false; 
    this.printingOrders = response.data; 
    this.totalNumberOfCharacters = 0; 
    this.totalNumberOfCharactersNext = 0; 
    if (this.printingOrders.labelPresentOrder && this.printingOrders.labelPresentOrder.lines) { 
     this.printingOrders.labelPresentOrder.lines.forEach(
     line => { 
      this.totalNumberOfCharacters += line.length; 
     } 
    ); 
    } 
    if (this.printingOrders.labelNextOrder && this.printingOrders.labelNextOrder.lines) { 
     this.printingOrders.labelNextOrder.lines.forEach(
     line => { 
      this.totalNumberOfCharactersNext += line.length; 
     } 
    ); 
    } 
    if (this.printingOrders.printing) { 
     this.suscribeNotifications(); 
    } 
    } 
), err => { 
    this.loading = false; 
    this.alertService.error(INFO_NO_EXISTEN_ORDEN_PREPARADA); 
    this.hasAlert = true; 
}; 

}

的錯誤是在這一行:

this.imprimirService.getInfoPrinting().subscribe(

我在做什麼錯?

謝謝。

+0

我不認爲這是你的linter,我認爲你的右括號和將回調參數分隔爲'''subcribe''的逗號是錯位的。 – zigzag

+0

嘗試在括號內放置'response',像這樣:'this.imprimirService.getInfoPrinting()。subscribe((response)=> {...});' – SrAxi

回答

3

您的代碼不正確。取而代之的

getInfoPrinting() { 
    this.imprimirService.getInfoPrinting().subscribe(
     response => { 
     ... 
     } 
    ), err => { 
     ... 
    }; 
} 

應該

getInfoPrinting() { 
    this.imprimirService.getInfoPrinting().subscribe(
     response => { 
     ... 
     }, 
     err => { 
     ... 
    }); 
} 

的錯誤將是很容易被發現,如果方法體爲短。你應該委託給你的回調中的一個單獨的方法。

+0

將括號內的響應放在括號中還是沒有它們之間有什麼區別?例如:'.subscribe((response)=> {...})' – SrAxi

+2

無。如果你有幾個參數(或沒有),則需要括號。 –